Head, head andmestruktuurid
Varia / / December 05, 2023
See kursus - järjekordne oluline samm sinu arengus kompetentse IT-spetsialistina programmeerimisvaldkonnas. Kui olete õppinud keele põhivõimalused, selle objektorienteeritud komponendi, on järgmine loogiline samm tüüpiliste, sageli kasutatavate andmestruktuuride uurimine, nende tugevate ja nõrkade külgede tundmine nende tõhusaks kasutamiseks projektid.
Iga enam-vähem töökindel programm kasutab vähemalt ühte lihtsat andmestruktuuri, näiteks massiive. Ja keerulisemates projektides on alati keerulisemad, nagu lingitud loendid, räsitabelid, komplektid, assotsiatiivsed massiivid jne. Seda kõike peate teadma, et teie programmid võimalikult kiiresti välja tuleksid ja samal ajal seadme mälu säästlikult kasutada. Pealegi küsitakse neilt peaaegu alati programmeerija ametikoha intervjuudel küsimused andmestruktuuride ja algoritmide keerukuse hindamise meetodite kohta, tavaliselt "suure O" vaatenurgast (Suur O). Kõik need olulised teemad sisalduvad selles kursuses. Selle täitmine võimaldab teil mitte ainult enesekindlamalt algoritme kirjutada, vaid ka olla edukam tulevaste töökohtade jaoks mõeldud intervjuudel.
Algoritmide arvutusliku keerukuse hindamise õppimine
1. Big O tutvustus
2. Suur O logaritmilise ja faktoriaalse keerukusega
Kõige lihtsamad andmestruktuurid
1. Staatiline massiiv
2. Staatiline massiiv C++ keeles
3. Dünaamiline massiiv
4. Dünaamiline massiiv Pythonis
5. Dünaamiline massiiv C++ keeles
Lingitud loendid
1. Üksiklingitud loend
2. Üksiklingitud loend C++ keeles
3. Topeltlingitud nimekiri
4. Topeltlingitud loend C++ keeles nullist
5. C++ STL teegi topeltlingitud loendi loendiklass
Järjekorrad ja virn
1. FIFO ja LIFO järjekorrad
2. collections.deque järjekord Pythonis
3. C++ STL teegi järjekorra deque klass
4. Virna
5. Viru rakendamine Pythonis ja C++ keeles
Puud ja komplektid
1. Binaarsed puud
2. Meetodid kahendpuu tippude läbimiseks ja eemaldamiseks
3. Binaarne puu Pythonis
4. Komplektid. Määra toimingud
5. Komplektid ja multihulgad C++ keeles
6. STL teegi kaardikonteiner C++ keeles
7. Prefiksi (laaditud, Trie) puu. Assotsiatiivsed massiivid
Räsi tabelid
1. Räsi tabelid
2. Universaalne räsimine
3. Avatud adresseerimismeetod. Topelträsimine
4. Räsitabelid Pythonis ja C++ keeles