Algoritmy a Datové Struktury v JS

Optimalizujte svůj kód

Na těchto webových stránkách se dozvíte o různých algoritmech a datových strukturách. Díky tomu budete moci psát efektivnější kód nebo jej případně umět optimalizovat.

dozvědět se více

Vítejte

Vítejte na webových stránkách o algoritmech a datových strukturách. Nachází se zde tutoriál, rozdělený na 16 částí, který vás postupně provede různými algoritmy a datovými strukturami. V první části se dozvíte co je to Big O Notation, druhá část vám ukáže jak postupovat při řešení problému a třetí část je o rekurzy. Další části se zaměřují na konkrétní algoritmy nebo datové struktury. Dozvíte se v nich o vyhledávacích a seřazovacích algoritmech, datových strukturách jako je singly a doubly linked list, stack, queue, binary search tree, hash table, graph a mnohem více.

Tutoriál obsahuje mnoho interaktivních ukázek, které vám pochopení některých algoritmů a datových struktur mohou dost usnadnit. Umožní vám prohlédnout si, jak se kód provádí a díky vizuálnímu zobrazení datových struktur můžete vidět, jak se s nimi pracuje. Textově tutoriál není tolik dobrý, ale myslím že díky interaktivním ukázkám se z něj můžete naučit hodně věcí.

Tyto webové stránky jsem chtěl vytvořit hlavně proto, abych si procvičil co jsem se naučil v kurzu o algoritmech a datových strukturách, který jsem absolvoval na udemy.com. Nejsem žádný profík a taky se jen učím, neberte můj tutoriál moc vážně. Některé věci asi nevysvětluji moc jasně a pro některé věci nepoužívám česká slova. Učil jsem se v angličtině, takže českou terminologii neznám. Namísto tutoriálu třeba můžete mé webové stránky pojmout jen jako tahák.

Části Tutoriálu

Tutoriál je rozdělen na 16 různých částí. Najdete zde část o seřazovacích algoritmech, linked listech, hash tablech, graphech, Dijkstrově algoritmu a mnohem více.

Big O Notation
Big O Notation
Postup při řešení problému
Postup při řešení problému
Rekurze
Rekurze
Vyhledávací algoritmy
Vyhledávací algoritmy
Seřazovací algoritmy
Seřazovací algoritmy
Singly Linked List
Singly Linked List
Doubly Linked List
Doubly Linked List
Stack a Queue
Stack a Queue
Binary Search Tree
Binary Search Tree
Tree Traversing
Tree Traversing
Binary Heap
Binary Heap
Hash Table
Hash Table
Graph
Graph
Graph Traversing
Graph Traversing
Dijkstrův algoritmus
Dijkstrův algoritmus
Dynamické programování
Dynamické programování

Kde jsem se učil já

Já jsem se algoritmy a datové struktury učil ve video kurzu JavaScript Algorithms and Data Structures Masterclass na udemy.com. Určitě jej můžu doporučit. Narozdíl od mého tutoriálu, ve kterém vám vždy jen ukážu řešení, si v tomto kurzu můžete zkusit vyřešit spoustu problémů sami. Instruktor vám většinou v jednom videu popíše co máte udělat a ve druhém vám ukáže řešení, které můžete porovnat s tím svým. Díky tomu mě tento kurz hodně bavil.

Pokud byste se do tohoto kurzu chtěli pustit, tak mám pro vás jednu radu. Nic se neučte nazpaměť, o tom programování není. Snažte se spíš pochopit jak různé algoritmy fungují. Pokud je někdy budete potřebovat, tak si je vždy můžete najít. Já si vždy dělám poznámky když sleduji nějaký kurz, namísto toho abych se učil věci nazpaměť. Poté co kurz dokončím, tak se většinou pustím do nějakého projektu, kde aplikuji co jsem se naučil a ono to do hlavy naskáče samo. Proto jsem vlastně vytvořil tyto webové stránky.