Přejít k navigační liště

Zdroják » Zprávičky » Statická vizualizace řadících algoritmů

Statická vizualizace řadících algoritmů

Existuje řada animací pro srovnávání řadících algoritmů. Aldo Cortesi k nim má jisté výhrady a preferuje statická zobrazení, která můžou vypadat jako na obrázku níže, na kterém najdete vizualizaci heapsortu (řazení haldou):

Schéma řazení haldou

Aldo vytvořil skript, které podobné obrázky vygeneruje. Jacob Seidelin tento skript portoval do JavaScriptu a obrázky generuje pomocí canvasu, což si můžete snadno vyzkoušet sami. A co vy, preferujete animovanou vizualizaci nebo zde zmíněnou statickou?

Komentáře

Odebírat
Upozornit na
guest
3 Komentářů
Nejstarší
Nejnovější Nejvíce hlasů
Borek Bernard

Dobrý tip. V tom posledním odkazu doporučuji odškrnout "Swap width", aby šla vizuálně porovnat rychlost.

Anonymní

Odškrtnutím swap width nejde porovnávat rychlost, ale pouze počet výměn (která s rychlostí nemusí souviset). Je to vidět třeba na insertion sortu, který má složitost O(n^2), ale počet prohození má minimální (max. n) a tak se jeví jako nejrychlejší.

Karel

Vizuálně neporovnáte nic. Jsou zobrazeny jednotlivé stavy, což ovšem nic nevypovídá o tom, jak náročné je nový stav dosáhnout. U některých typů řazení je přechod představován triviální a rychlou operací (porovnání dvou prvků), u jiných se jedná o nutnost procházet všechny prvky.

Začal jako projekt studentů Matfyzu. Český BIRD dnes pomáhá řídit provoz na největších internetových uzlech

Internet drží pohromadě i díky místům, kde se propojují sítě poskytovatelů připojení, cloudů nebo videoslužeb. S předáváním informací o tom, kudy jsou jednotlivé sítě dostupné, jim ve Frankfurtu, Londýně i Amsterdamu pomáhá český BIRD. Začal jako studentský projekt, po první verzi z roku 2000 léta spíš dřímal a soustavný vývoj obnovil až CZ.NIC. Ve své úloze uspěl tak výrazně, že největší uzly nakonec začaly platit vývoj konkurenčního softwaru, aby nebyly závislé jen na něm.

WebSocket: Jak dostat webovou aplikaci do reálného času

Chat, živé notifikace, společná úprava dokumentu nebo průběžně aktualizované kurzy. Uživatelé dnes čekají, že se webová aplikace změní ve chvíli, kdy se změní data, a ne až po stisknutí klávesy F5. Protokol WebSocket je nejrozšířenější způsob, jak mezi prohlížečem a serverem vytvořit trvalý obousměrný kanál. V článku se podíváme, jak funguje pod kapotou, jak ho použít v prohlížeči i na serveru a na co si dát pozor při nasazení do produkce.