Co je datová struktura?
Datová struktura je koncept z oblasti informatiky, který odkazuje na konkrétní metodu sběru a organizování informací. Všechny datové struktury využívají informace o tom, kde je daný kus dat umístěn v paměti počítače, aby k těmto datům měl přístup a připojil je k jiným datům. Datové struktury vytvářejí jeden z mnoha různých druhů vztahů mezi jednotlivými informacemi. Různé typy datové struktury jsou účinnější pro různé účely a obtížnost kódování se u různých typů datových struktur značně liší.
Pole patří mezi nejjednodušší datové struktury, ale přesto jsou velmi výkonnými nástroji pro organizování informací. V poli jsou prvkům přiřazeny sekvenční adresy paměti, což umožňuje velmi rychle určit adresu paměti jakékoli položky v poli pomocí jednoduchých matematických výpočtů, což je klíčová výhoda. Pole lze považovat za existující v libovolném počtu rozměrů. Jednorozměrné pole může být pojato jako seznam, dvourozměrné pole jako tabulka a trojrozměrné pole jako krychle jednotlivých buněk. Mohou také existovat pole více než tří rozměrů.
Propojené seznamy jsou dalším jednoduchým, ale velmi důležitým typem datové struktury. V propojeném seznamu se každý uzel skládá z proměnné obsahující jak skutečná data, tak informace identifikující další prvek v seznamu. Propojený seznam tedy může procházet, pokud je známa adresa prvního uzlu. Tento typ datové struktury je univerzální, protože umožňuje dynamický růst, protože nové uzly lze snadno kdykoli přiřadit. Přidání proměnné obsahující umístění předchozího uzlu v seznamu umožňuje, aby byl tento typ datové struktury procházen v obou směrech.
Stromy uspořádávají uzly hierarchicky, počínaje kořenovým uzlem a sestupem přes více vrstev uzlů, dokud nejsou všechna nezbytná data uložena do struktury. Obvykle jsou prvky ve stromu uspořádány nějakým způsobem. Stromy mohou implementovat třídění a z tohoto důvodu mohou potenciálně poskytovat mnohem rychlejší přístup k uloženým datům, protože každé větvení vylučuje celé posloupnosti informací z uvažování, které by bylo třeba seřadit do propojeného seznamu.
Hašovací tabulky se používají k určení adresy paměti, ve které má být daná část dat uložena pomocí rovnice pro transformaci těchto dat na adresu paměti. Mohou to být velmi efektivní struktury pro ukládání a získávání dat z pole.
Všechny datové struktury jsou navrženy tak, aby snížily počet pokynů, které musí počítač provést, aby nalezl konkrétní část informace. Různé typy dat se hodí k různým typům datových struktur, ale většina moderních programovacích jazyků nabízí podporu pro širokou škálu datových struktur nebo poskytuje nástroje, které umožňují programátorům kódovat jejich vlastní datové struktury.