Suosituimmat Java-tietorakenteet ja algoritmit, jotka sinun on tiedettävä



Tämä Java-tietorakenteita ja algoritmeja käsittelevä blogi auttaa sinua ymmärtämään kaikkia Javan tärkeimpiä tietorakenteita ja algoritmeja.

Jos minun täytyisi valita ohjelmistokehityksen tärkein yksittäinen aihe, se olisi tietorakenteet ja algoritmit. Voit ajatella sitä jokaisen tietokoneohjelmoijan käytettävissä olevana perustyökaluna. Ohjelmoinnin aikana käytämme Tietorakenteet tallentaa ja järjestää tietoja ja algoritmeja manipuloida näiden rakenteiden tietoja. Tämä artikkeli sisältää yksityiskohtaisen katsauksen kaikista tavallisista tietorakenteista ja algoritmeista jotta lukijat voisivat hyvin varustautua.

Alla on lueteltu tässä artikkelissa käsiteltyjä aiheita:





Tietorakenteet Javassa

Tietorakenne on tapa tallentaa ja järjestää tietoja tietokoneeseen, jotta niitä voidaan käyttää tehokkaasti. Se tarjoaa keinon hallita suuria tietomääriä tehokkaasti. Ja tehokkaat tietorakenteet ovat avain tehokkaiden algoritmien suunnittelussa.

SisäänTämän ”Java-tietorakenteet ja algoritmit” -artikkelissa käsitellään perustietorakenteita, kuten:



Katsotaanpa kukin niistä.

Lineaariset tietorakenteet Javassa

Lineaariset tietorakenteet ovat niitä, joiden elementit ovat peräkkäisiä ja järjestetty siten, että: on vain yksi ensimmäinen elementti ja sillä on vain yksi seuraava elementti , on vain yksi ainoa viimeinen elementti ja sillä on vain yksi edellinen elementti , kun taas kaikilla muilla elementeillä on a Seuraava ja a Edellinen elementti.

Taulukot

An taulukko on lineaarinen tietorakenneedustaa samanlaisten elementtien ryhmää, johon pääsee hakemistolla. Taulukon koko on ilmoitettava ennen tietojen tallentamista. Alla on taulukon ominaisuudet:



  • Jokainen matriisin elementti on samaa tietotyyppiä ja saman kokoinen
  • Matriisin elementit tallennetaan vierekkäisiin muistipaikkoihin siten, että ensimmäinen elementti alkaa pienimmästä muistipaikasta
  • Matriisin elementteihin pääsee satunnaisesti
  • Matriisidatarakenne ei ole täysin dynaaminen

Taulukot - Edureka

Esimerkiksi , saatamme haluta videopelin seuraamaan kyseisen pelin kymmenen parhaan tuloksen. Sen sijaan, että käyttäisit kymmenen erilaista muuttujat Tätä tehtävää varten voisimme käyttää yhtä nimeä koko ryhmälle ja käyttää indeksinumeroita viitataksesi ryhmän korkeimpiin pisteisiin.

Linkitetty luettelo

TO on lineaarinen tietorakenne, jossa on useita solmuja, joissa each-elementti tallentaa omat tiedot ja osoittimen seuraavan elementin sijaintiin. Linkitetyn luettelon viimeinen linkki osoittaa nollaan, mikä osoittaa ketjun lopun. Linkitetyn luettelon elementtiä kutsutaan a solmu . Ensimmäistä solmua kutsutaan pää .Viimeinen solmu kutsutaan häntä .

Linkitetyn luettelon tyypit

Yksittäin linkitetty luettelo (yksisuuntainen)

Kaksinkertaisesti linkitetty luettelo (kaksisuuntainen)

Pyöreä linkitetty luettelo

Tässä on yksinkertainen esimerkki: Kuvittele linkitetty luettelo, kuten ketjun paperiliittimiä, jotka on linkitetty toisiinsa. Voit helposti lisätä toisen paperiliittimen ylä- tai alaosaan. On jopa nopea lisätä yksi keskelle. Sinun tarvitsee vain irrottaa ketju keskellä, lisätä uusi paperiliitin ja liittää sitten toinen puolikas takaisin. Linkitetty luettelo on samanlainen.

Pinot

Pino, abstrakti tietorakenne on kokoelma esineitä jotka lisätään ja poistetaan viimeinen-ensimmäiseksi-ulos (LIFO) periaate. Objektit voidaan lisätä pinoon milloin tahansa, mutta vain viimeisin lisätty (eli 'viimeinen') objekti voidaan poistaa milloin tahansa.Alla on lueteltu pinon ominaisuudet:

  • Se on orderd-luettelo, johonlisäys ja poisto voidaan suorittaa vain yhdessä päässä, jota kutsutaan alkuun
  • Rekursiivinen tietorakenne osoittimella sen yläosaan
  • Seuraa viimeinen-ensimmäiseksi-ulos (LIFO) periaate
  • Tukee kahta perustavanlaatuista menetelmää
    • työnnä (e): Aseta elementti e pinon yläosaan
    • pop (): Poista ja palauta pinon yläosa

Käytännöllisiä esimerkkejä pinosta ovat sanan kääntäminen,tarkistaaksesi suluissajärjestys,selkätoimintojen toteuttaminen selaimissa ja monissa muissa.

Jonot

ovat myös toisen tyyppisiä abstrakteja tietorakenteita. Toisin kuin pino, jono on kokoelma esineitä, jotka lisätään ja poistetaan ensiksi-ensimmäiseksi-ulos (FIFO) periaate. Eli elementtejä voidaan lisätä milloin tahansa, mutta vain elementti, joka on ollut pisin jonossa, voidaan poistaa milloin tahansa.Alla on lueteltu jonon ominaisuudet:

  • Usein kutsutaan ensimmäinen sisällä ensimmäinen ulkona lista
  • Tukee kahta perustavanlaatuista menetelmää
    • enqueue (e): Lisää elementti e kohtaan takaosa jonosta
    • dequeue (): Poista elementti ja palauta se edessä jonosta

Jonot ovat käytössäasynkroninen tiedonsiirto kahden prosessin välillä, suorittimen ajoitus, levyn ajoitus ja muut tilanteet, joissa resurssit jaetaan useiden käyttäjien kesken ja palvellaan ensin palvelupalvelun perusteella. Seuraavaksi tässä artikkelissa 'Tietorakenteet ja algoritmit Javassa' meillä on hierarkkiset tietorakenteet.

Hierarkkiset tietorakenteet Javassa

Binaarinen puu

Binaarinen puu on ahierarkkiset puurakenteet, joissa kussakin solmussa on enintään kaksi lasta , joihin viitataan nimellä vasen lapsi ja oikea lapsi . Jokaisella binääripuulla on seuraavat solmuryhmät:

kuinka tehdä syvä kopio java
  • Juurisolmu: Se on ylin solmu ja sitä kutsutaan usein pääsolmuksikoska kaikki muut solmut voidaan saavuttaa juuresta
  • Vasen alipuu, joka on myös binääripuu
  • Oikea alipuu, joka on myös binääripuu

Alla on lueteltu binääripuun ominaisuudet:

  • Binaarinen puu voidaan kulkea kahdella tavalla:
    • Syvyys ensimmäinen läpikulku : Järjestyksessä (Vasen-Juuri-Oikea), Ennakkotilaus (Vasen-Vasen-Oikea) ja Postorder (Vasen-Oikea-Juuri)
    • Leveys ensimmäinen läpikulku : Tasotilauksen kulku
  • Puun kulkemisen ajan monimutkaisuus: O (n)
  • Solmujen enimmäismäärä tasolla ‘l’ = 2l-1.

Binaaristen puiden sovelluksia ovat:

  • Käytetään monissa hakusovelluksissa, joissa tietoja tulee jatkuvasti / poistuu
  • Työnkulkuna digitaalisten kuvien kokoamiseen visuaalisia tehosteita varten
  • Käytetään melkein jokaisessa suuren kaistanleveyden reitittimessä reitittimen taulukoiden tallentamiseen
  • Käytetään myös langattomassa verkossa ja muistin allokoinnissa
  • Käytetään pakkausalgoritmeissa ja monissa muissa

Binaarinen kasa

Binaarinen kasa on täydellinenbinaarinen puu, joka vastaa kasan omaisuutta. Yksinkertaisesti sanottunaon muunnelma binääripuusta, jolla on seuraavat ominaisuudet:

  • Heap on täydellinen binääripuu: Puun sanotaan olevan täydellinen, jos kaikki sen tasot, lukuun ottamatta mahdollisesti syvintä, ovat täydellisiä. Thänen omaisuutensa Binary Heap tekee siitä sopivan säilytettäväksi .
  • Seuraa kasan ominaisuutta: Binaarinen kasa on joko a Min-kasa tai a Max-Heap .
    • Min binäärikasa: Ftai jokaisen kasan solmun, solmun arvo on pienempi tai yhtä suuri kuin lasten arvot
    • Suurin binäärikasa: Ftai jokaisen kasan solmun, solmun arvo on suurempi tai yhtä suuri kuin lasten arvot

Binaarisen kasan suosittuja sovelluksia ovattehokkaiden prioriteettijonojen toteuttaminen, k pienimmän (tai suurimman) elementin löytäminen tehokkaasti taulukosta ja paljon muuta.

Hash-taulukot

Kuvittele, että sinulla on esine ja haluat antaa sille avaimen, joka tekee hausta erittäin helppoa. Voit tallentaa kyseisen avain / arvo-parin käyttämällä yksinkertaista taulukkoa, kuten tietorakennetta, jossa avaimia (kokonaislukuja) voidaan käyttää suoraan indeksinä tietojen arvojen tallentamiseen. Tapauksissa, joissa avaimet ovat liian suuria eikä niitä voida käyttää suoraan indeksinä, käytetään hajautusmenetelmää.

Hajautuksessa suuret avaimet muunnetaan pieniksi avaimiksi käyttämällä hash-toiminnot . Arvot tallennetaan sitten tietorakenteeseen, jota kutsutaanettä hash-taulukko. Hajautustaulukko on tietorakenne, joka toteuttaa sanakirja ADT: n, rakenne, joka voi kartoittaa yksilölliset avaimet arvoihin.

Hajautustaulukossa on yleensä kaksi pääkomponenttia:

  1. Ämpärijärjestelmä: Hajataulukon ämpäri on matriisi A, jonka koko on N, jossa A: n kutakin solua pidetään ”kauhana” eli kokoelmana avainarvopareista. Luku N määrittelee taulukon kapasiteetin.
  2. Hash-toiminto: Se on mikä tahansa toiminto, joka kartoittaa karttamme jokaisen avaimen k kokonaislukuun alueella [0, N & miinus 1], missä N on tämän taulukon ämpäri-taulukon kapasiteetti.

Kun laitamme objektit hashtableen, on mahdollista, että eri kohteilla voi olla sama hashcode. Tätä kutsutaan a törmäys . Törmäyksen käsittelemiseksi on olemassa tekniikoita, kuten ketjutus ja avoin osoite.

Joten nämä ovat joitain perustietoja ja yleisimmin käytettyjä Java-tietorakenteita. Nyt kun olet tietoinen näistä, voit aloittaa niiden toteuttamisen omassa . Tällä tavoin olemme saaneet valmiiksi tämän Data-rakenteiden ja algoritmien Java-artikkelin ensimmäisen osan. Seuraavassa osassa aiomme oppiaperusalgoritmit ja niiden käyttö käytännön sovelluksissa, kuten lajittelu ja haku, jakaminen ja valloittaminen, ahneet algoritmit, dynaaminen ohjelmointi.

Java-algoritmit

Historiallisesti käytettyjä työkaluja monimutkaisten matemaattisten laskelmien ratkaisemiseen algoritmit liittyvät läheisesti tietojenkäsittelytieteisiin ja erityisesti tietorakenteisiin. Algoritmi on ohjeiden sarja, joka kuvaa tapaa ratkaista tietty ongelma tietyssä ajassa. Heitä on edustettu kahdella tavalla:

  • Vuokaaviot - Se on avisuaalinen esitys algoritmin ohjausvirrasta
  • Pseudokoodi - Seon tekstimuotoinen kuvaus algoritmista, joka likiarvoaa lopullisen lähdekoodin

Huomautus: Algoritmin suorituskyky mitataan ajan monimutkaisuuden ja avaruuden monimutkaisuuden perusteella. Enimmäkseen minkä tahansa algoritmin monimutkaisuus riippuu ongelmasta ja itse algoritmista.

Tutkitaan kahta Java-algoritmien pääryhmää, jotka ovat:

Algoritmien lajittelu Java-sovelluksessa

Lajittelualgoritmit ovat algoritmeja, jotka asettavat luettelon elementit tiettyyn järjestykseen. Yleisimmin käytettyjä tilauksia ovat numeerinen järjestys ja leksikografinen järjestys. Tässä artikkelissa Tietorakenteet ja algoritmit voidaan tutkia muutamia lajittelualgoritmeja.

Bubble Sort Java

Bubble Sort, jota usein kutsutaan uppoavaksi lajitteluksi, on yksinkertaisin lajittelualgoritmi. Se käy toistuvasti läpi lajiteltavan luettelon, vertaa kutakin vierekkäistä elementtiparia ja vaihtaa ne, jos ne ovat väärässä järjestyksessä.Bubble sort saa nimensä, koska se suodattaa elementit matriisin yläosaan, kuten kuplat, jotka kelluvat vedessä.

Tässäpseudokoodi, joka edustaa kuplalajittelualgoritmia (nouseva lajittelukonteksti).

a [] on taulukko, jonka koko on N alkaa BubbleSort (a []) ilmoittaa kokonaisluvun i, j = i = 0 - N - 1, jos j = 0 - N - i - 1, jos a [j]> a [j + 1 ] vaihda sitten [j], [j + 1] pää, jos loppu, palauttaa lopun BubbleSort

Tämä koodi järjestää N-tietoalkioiden yksiulotteisen taulukon nousevaan järjestykseen. Ulkosilmukka saa N-1: n kulkemaan matriisin yli. Jokainen läpikäynti käyttää sisäistä silmukkaa datakohteiden vaihtamiseen siten, että seuraavaksi pienin dataerä 'kuplii' matriisin alkuun. Mutta ongelmana on, että algoritmi tarvitsee yhden kokonaisen siirron ilman vaihtoja tietääkseen, että luettelo on lajiteltu.

Pahin ja keskimääräinen tapauksen ajan monimutkaisuus: O (n * n). Pahin tapaus tapahtuu, kun taulukko lajitellaan käänteisesti.

Paras tapa-ajan monimutkaisuus: Päällä). Paras tapaus tapahtuu, kun taulukko on jo lajiteltu.

Valinta Lajittele Java

Valintalajittelu on yhdistelmä sekä hakua että lajittelua. Algoritmi lajittelee matriisin etsimällä toistuvasti minimielementin (ottaen huomioon nouseva järjestys) lajittelemattomasta osasta ja asettamalla sen oikeaan kohtaan taulukossa.

Tässä on pseudokoodi, joka edustaa valinnan lajittelualgoritmia (nouseva lajittelukonteksti).

a [] on taulukko, jonka koko on N Aloita SelectionSort (a []) i = 0 - n - 1 / * aseta nykyinen elementti vähintään * / min = i / * etsi minimielementti * / arvolle j = i + 1 kohtaan n, jos luettelo [j]

Kuten koodista ymmärrät, lajittelun matriisin läpi kertojen määrä on yksi vähemmän kuin matriisin kohteiden määrä. Sisempi silmukka löytää seuraavaksi pienimmän arvon ja ulompi silmukka sijoittaa arvon oikeaan sijaintiinsa. Valintalajittelu ei koskaan tee enempää kuin O (n) -vaihtoa ja voi olla hyödyllinen, kun muistin kirjoitus on kallista.

Ajan monimutkaisuus: Päällä2), koska sisäkkäisiä silmukoita on kaksi.

Ylimääräinen tila: Tai (1).

Lisälajittelu Java-muodossa

Insertion Sort on yksinkertainen lajittelualgoritmi, joka toistaa luettelon läpi kuluttamalla yhtä syöttöelementtiä kerrallaan ja rakentaa lopullisen lajiteltu taulukon. Se on hyvin yksinkertainen ja tehokkaampi pienemmissä tietojoukoissa. Se on vakaa ja paikallaan oleva lajittelutekniikka.

Tässä on pseudokoodi, joka edustaa lisäyslajittelualgoritmia (nouseva lajittelukonteksti).

a [] on taulukko, jonka koko on N Aloita InsertionSort (a []) i = 1 - N-näppäimelle = a [i] j = i - 1, kun taas (j> = 0 ja a [j]> avain0 a [j + 1] = x [j] j = j - 1 pää, kun taas [j + 1] = avaimen pää InsertionSort

Kuten koodista ymmärrät, lisäyksen lajittelualgoritmipoistaa yhden elementin syötetiedoista, löytää sijainnin, joka kuuluu lajiteltuun luetteloon, ja lisää sen sinne. Se toistuu, kunnes yksikään syöttöelementti ei ole lajittelematon.

Paras tapaus: Paras tapa on, kun tulo on jo lajiteltu taulukko. Tässä tapauksessa lisäyslajittelulla on lineaarinen ajoaika (ts. & Theta (n)).

Pahimmassa tapauksessa: Yksinkertaisin pahin tapa -syöttö on käänteisessä järjestyksessä lajiteltu taulukko.

QuickSort Java-sovelluksessa

Quicksort-algoritmi on nopea, rekursiivinen, ei-vakaa lajittelualgoritmi, joka toimii jakamis- ja valloitusperiaatteella. Se valitsee elementin pivotiksi ja osioi annetun taulukon valitun pivotin ympärille.

Vaiheet pikalajittelun toteuttamiseksi:

  1. Valitse sopiva kääntöpiste.
  2. Jaa luettelot kahteen luetteloonperustuu tähän kääntöelementtiin. Jokainen elementti, joka on pienempi kuin kääntöelementti, sijoitetaan vasempaan luetteloon ja jokainen suurempi elementti oikeaan luetteloon. Jos elementti on yhtä suuri kuin pivot-elementti, se voi mennä mihin tahansa luetteloon. Tätä kutsutaan osioinniksi.
  3. Lajittele kaikki pienemmät luettelot rekursiivisesti.

Tässä on pseudokoodi, joka edustaa Quicksort-algoritmia.

QuickSort (A matriisina, matala int, korkea kuin int) {if (matala

Yllä olevassa pseudokoodissa osio () toiminto suorittaa osioinnin ja Quicksort () toiminto kutsuu toistuvasti osiotoimintoa jokaiselle tuotetulle pienemmälle listalle. Quicksortin monimutkaisuus keskimääräisessä tapauksessa on & Theta (n log (n)) ja pahimmassa tapauksessa & Theta (n2).

Yhdistä lajittelu Java-sovelluksessa

Mergesort on nopea, rekursiivinen, vakaa lajittelualgoritmi, joka toimii myös jakamis- ja valloitusperiaatteella. Samankaltainen kuin pikalajittelu, yhdistämislajittelu jakaa elementtiluettelon kahteen luetteloon. Nämä luettelot lajitellaan itsenäisesti ja yhdistetään sitten. Luetteloiden yhdistämisen aikana elementit lisätään (tai yhdistetään) luettelon oikeaan kohtaan.

Tässä on pseudokoodi, joka edustaa yhdistämisen lajittelualgoritmia.

menettely MergeSort (a matriisina) jos (n == 1) palauttaa muuttujan var l1 matriisina = a [0] ... a [n / 2] var l2 matriisina = a [n / 2 + 1] ... a [n] l1 = mergesort (l1) l2 = mergesort (l2) return sulautuminen (l1, l2) lopetusproseduurimenetelmä sulautuminen (a matriisina, b matriisina) var c matriisina, kun taas (a: lla ja b: llä on elementtejä) jos ( a [0]> b [0]) lisää b [0] c: n päähän poista b [0] b: stä muuten lisää a [0] c: n päähän poista [0] päästä, jos loppu kun taas (a: lla on elementtejä) lisää [0] c: n päähän, poista [0] päästä, kun taas (b: llä on elementtejä) lisää b [0] c: n loppuun, poista b [0] b: n päästä, kun palaat c lopeta menettely

Yhdistä lajittelu() toiminto jakaa luettelon kahteen puheluun Yhdistä lajittelu() näissä luetteloissa erikseen ja yhdistää ne sitten lähettämällä ne parametreina yhdistämistoimintoon ().Algoritmilla on monimutkaisuus O (n log (n)) ja sillä on laaja valikoima sovelluksia.

Heap Lajittelu Java

Heapsort on vertailupohjainen lajittelualgoritmiBinaarisen kasan tietorakenne. Voit ajatella sitä parannetuksi version f valinnan lajitteluksi, missäse jakaa panoksensa lajiteltuun ja lajittelemattomaan alueeseen ja kutistaa lajittelemattoman alueen iteratiivisesti poimimalla suurimman elementin ja siirtämällä sen lajiteltuun alueeseen.

Vaiheet Quicksortin käyttöönottamiseksi (kasvavassa järjestyksessä):

  1. Rakenna maksimikoko lajitteluryhmän avulla
  2. Tällä point, suurin esine on tallennettu kasan juurelle. Korvaa se kasan viimeisellä kappaleella ja pienennä kasan kokoa 1: llä. Lopuksi kasaa puun juuri
  3. Toista yllä olevia vaiheita, kunnes kasan koko on suurempi kuin 1

Tässä on pseudokoodi, joka edustaa kasan lajittelualgoritmia.

Heapsort (a taulukko) (i = n / 2 - 1) - i> = 0 kasaan (a, n, i) i = n-1: stä 0: een vaihto (a [0], a [i]) (a, i, 0) loppu päähän heapify: lle (a matriisina, n int: nä, i int: nä) suurin = i // Alusta suurin juurena int l eft = 2 * i + 1 // vasen = 2 * i + 1 int oikea = 2 * i + 2 // oikea = 2 * i + 2 jos (vasen [suurin]) suurin = vasen, jos (oikea [suurin]) suurin = oikea, jos (suurin! = I) vaihda ( a [i], A [suurin]) Heapify (a, n, suurin) pää kasautuu

Näiden lisäksi on olemassa muita ei niin tunnettuja lajittelualgoritmeja, kuten Introsort, Counting Sort jne. Siirtymällä seuraavaan algoritmien sarjaan tässä Tietorakenteet ja algoritmit -artikkelissa tutkitaan algoritmeja.

Algoritmien haku Java-sovelluksessa

Haku on yksi yleisimmistä ja usein suoritetuista toiminnoista tavallisissa liiketoimintasovelluksissa. Hakualgoritmit ovat algoritmeja määriteltyjen ominaisuuksien löytämiseen kohteekokoelman joukosta. Tutkitaan kahta yleisimmin käytettyä hakualgoritmia.

Lineaarinen hakualgoritmi Javassa

Lineaarinen haku tai peräkkäinen haku on yksinkertaisin hakualgoritmi. Siihen sisältyy elementin peräkkäinen etsiminen annetusta tietorakenteesta, kunnes joko elementti löytyy tai rakenteen loppu on saavutettu. Jos elementti löytyy, kohteen sijainti palautetaan, muuten algoritmi palauttaa NULL.

Tässä on Java-lineaarista hakua edustava pseudokoodi:

menettely lineaarinen_haku (a [], arvo) i = 0 - n-1, jos a [i] = arvo, tulosta sitten 'Löydetty' palaa i loppu, jos tulosta 'Ei löydy' loppu loppu lineaarinen_haku

Se onraakavoiman algoritmi.Vaikka se on varmasti yksinkertaisin, se ei todellakaan ole yleisin, tehottomuutensa vuoksi. Lineaarisen haun aikakompleksi on PÄÄLLÄ) .

Binaarihakualgoritmi Javalla

Binaarihaku, joka tunnetaan myös nimellä logaritminen haku, on hakualgoritmi, joka löytää kohdearvon sijainnin jo lajitellussa taulukossa. Se jakaa syötekokoelman yhtä suuriksi puoliksi ja kohdetta verrataan luettelon keskiosaan. Jos elementti löytyy, haku päättyy siihen. Muuten jatkamme elementin etsimistä jakamalla ja valitsemalla matriisin sopiva osio sen perusteella, onko kohde-elementti pienempi vai suurempi kuin keskielementti.

Tässä on Java-binaarihakua edustava pseudokoodi:

Menettely binary_search lajiteltu taulukko n taulukon koko x arvo etsittäväksi lowerBound = 1 upperBound = n kun x ei löydy jos upperBound

Haku päättyy, kun ylempiBound (osoittimemme) menee ohi lowerBoundin (viimeinen elementti), mikä tarkoittaa, että olemme etsineet koko taulukkoa ja elementtiä ei ole läsnä.Se on yleisimmin käytetty hakualgoritmi ensisijaisesti nopean hakuaikansa ansiosta. Binaarihaun aikakompleksi on PÄÄLLÄ) mikä on merkittävä parannus PÄÄLLÄ) Lineaarisen haun aika-monimutkaisuus.

system.exit (1) java

Tämä tuo meidät tämän ”Data-rakenteiden ja algoritmien Java-artikkeliin” loppuun. Olen käsitellyt yhtä Java: n perustavanlaatuisimmista ja tärkeimmistä aiheista.Toivottavasti olet selvillä kaikesta, mitä sinulle on jaettu tässä artikkelissa.

Varmista, että harjoittelet mahdollisimman paljon ja palauta kokemuksesi.

Katso Edureka, luotettava verkko-oppimisyritys, jolla on yli 250 000 tyytyväisen oppijan verkosto, joka levisi ympäri maailmaa. Autamme sinua matkanne jokaisessa vaiheessa, jotta tulemme tämän Java-haastattelukysymyksen lisäksi, keksimme opetussuunnitelman, joka on tarkoitettu opiskelijoille ja ammattilaisille, jotka haluavat olla Java-kehittäjiä.

Onko sinulla kysymys meille? Mainitse se tämän Java-tietorakenteiden ja -algoritmien kommenttiosassa. artikkeli ja palaamme sinuun mahdollisimman pian.