Labas, labas datu struktūras
Literārs Mistrojums / / December 05, 2023
Šis kurss - vēl viens svarīgs solis jūsu kā kompetenta IT speciālista attīstībā programmēšanas jomā. Kad esat apguvis valodas pamatiespējas, tās objektorientēto komponentu, nākamais loģiskais solis ir tipisku, bieži lietotu datu struktūru izpēte, zināšanas par to stiprajām un vājajām pusēm, lai tās efektīvi izmantotu projektus.
Jebkura vairāk vai mazāk uzticama programma izmanto vismaz vienu vienkāršu datu struktūru, piemēram, masīvus. Sarežģītākos projektos vienmēr ir sarežģītāki, piemēram, saistītie saraksti, hash tabulas, kopas, asociatīvie masīvi utt. Tas viss ir jāzina, lai jūsu programmas izdotos pēc iespējas ātrāk un tajā pašā laikā taupīgi izmantotu ierīces atmiņu. Turklāt gandrīz vienmēr darba intervijās programmētāja amatam viņiem tiek uzdots jautājums jautājumi par datu struktūrām un metodēm algoritmu sarežģītības novērtēšanai, parasti no “lielā O” perspektīvas (Lielais O). Visas šīs svarīgās tēmas ir iekļautas šajā kursā. To aizpildot, varēsi ne tikai drošāk rakstīt algoritmus, bet arī veiksmīgāk piedalīties intervijās turpmākai nodarbinātībai.
Mācīšanās novērtēt algoritmu skaitļošanas sarežģītību
1. Ievads Big O
2. Liels O ar logaritmisko un faktoru sarežģītību
Vienkāršākās datu struktūras
1. Statiskais masīvs
2. Statiskais masīvs C++ valodā
3. Dinamiskais masīvs
4. Dinamiskais masīvs Python
5. Dinamiskais masīvs C++ valodā
Saistītie saraksti
1. Atsevišķi saistīts saraksts
2. Atsevišķi saistīts saraksts C++ valodā
3. Divkārši saistīts saraksts
4. Divkārši saistīts saraksts C++ valodā no nulles
5. C++ STL bibliotēkas dubultsaites saraksta klase
Rindas un kaudze
1. FIFO un LIFO rindas
2. collections.deque rinda Python
3. C++ STL bibliotēkas rindas deque klase
4. Kaudze
5. Stacka ieviešana Python un C++
Koki un komplekti
1. Binārie koki
2. Binārā koka virsotņu šķērsošanas un noņemšanas metodes
3. Binārais koks Python valodā
4. Komplekti. Iestatīt darbības
5. Kopas un multikopas programmā C++
6. STL bibliotēkas karšu konteiners C++ valodā
7. Prefiksa (ielādēta, Trie) koks. Asociatīvie masīvi
Hash tabulas
1. Hash tabulas
2. Universāla jaukšana
3. Atvērtā adresācijas metode. Dubultā jaukšana
4. Hash tabulas Python un C++