Definice a význam Heap

Co je Heap?

Hromada je datová struktura tvořená „uzly“, které obsahují hodnoty. Typická halda má kořenový uzel na vrcholu, který může mít dva nebo více podřízených uzlů přímo pod sebou. Každý uzel může mít dva nebo více podřízených uzlů, což znamená, že s každým podřízeným uzlem se halda rozšiřuje. Při vizuálním zobrazení vypadá halda jako obrácený strom a její obecný tvar je halda.

Když každý uzel v haldě může mít dva nebo více podřízených uzlů (nazývaných také „děti“), většina hal omezuje každý uzel na dva potomky. Tyto typy hromad se také nazývají binární haldy a lze je použít pro ukládání setříděných dat. Například „binární halda max“ ukládá nejvyšší hodnotu do kořenového uzlu. Druhá a třetí nejvyšší hodnota jsou uloženy v podřízených uzlech kořenového uzlu. V celém stromu má každý uzel větší hodnotu než kterýkoli z jeho podřízených uzlů. „Binární min. halda“ je opakem, kdy kořenový uzel ukládá nejnižší hodnotu a každý uzel má nižší hodnotu než jeho potomci.

V informatice se haldy často kreslí jako jednoduché diagramy. Skutečné ukládání dat do haldy je však složitější. Aby bylo možné haldu vytvořit, musí programátoři napsat jednotlivé algoritmy pro vkládání a mazání dat. Hodnoty vkládané do haldy se obvykle ukládají do množiny, na kterou se může odkazovat program. Protože jsou data v haldě již setříděná, poskytuje efektivní prostředek pro vyhledávání konkrétních hodnot.

POZNÁMKA:„Hromada“ je také programátorský termín, který lze použít pro popis dynamicky alokované paměti. K tomuto bloku paměti mohou přistupovat aktivní aplikace. Protože je paměť v haldě alokována dynamicky, může se zvětšovat nebo zmenšovat v závislosti na tom, kolik paměti se používá.

Definice Heap na této stránce je původní definice na SharTec.eu. Pokud chcete na tuto stránku odkázat, nezapomeňte uvést zdroj článku.

Cílem webu SharTec.eu je srozumitelně vysvětlit počítačovou terminologii. Snažíme se o jednoduchost a přesnost každé definice, kterou zveřejňujeme. Pokud máte připomínky k definici jazyka Hromada nebo chcete navrhnout nový technický termín, kontaktujte nás.

Cieľom stránky SharTec.eu je vysvetľovať počítačovú terminológiu zrozumiteľným spôsobom. Pri každej uverejnenej definícii sa snažíme o jednoduchosť a presnosť. Ak máte pripomienky k definícii jazyka Hromada alebo chcete navrhnúť nový technický termín, kontaktujte nás.