Middle
Чӣ гуна тақсимотҳои кӯҳҳо дар контексти структураҳои додаҳо мавҷуданд?
sobes.tech AI
Ҷавоб аз AI
Дар контексти структураҳои додаҳо, зери мафҳуми "хом" (Heap) одатан маънидод мешавад, ки як хоми дугона (Binary Heap) аст, ки дорои класификатсияҳои зерин аст:
-
Барои навъи тартиб:
- Хоми ками (Min-Heap): Арзиши ҳар як шабаки хурдтар ё баробар ба арзишҳои фарзандони он аст. Реша унсури ками аст.
- Хоми максимум (Max-Heap): Арзиши ҳар як шабаки калонтар ё баробар ба арзишҳои фарзандони он аст. Реша унсури максимум аст.
-
Барои пурра будани дарахт:
- Хоми дугонаи пурра (Complete Binary Heap): Ҳама сатҳҳо, ба истиснои шояд охирин, пурра пур шудаанд ва шабакавӣ дар сатҳи охирин то ҳадди имкон ба чап ҷойгир шудаанд. Ин хосият муҳим аст, зеро имкон медиҳад, ки хомро ба таври муассир дар массив нигоҳ дошт.
// Намунаи сохтор барои шабаки хом (барои намоиши консепт) public class HeapNode<T> { public T Value { get; set; } // Ҳаволаҳо ба шабаки хурдтар ё баробар ба таври равшан дар намоиши массивӣ намоён нестанд public HeapNode<T> Left { get; set; } public HeapNode<T> Right { get; set; } }
Гарчанде ки намудҳои дигаре аз хомҳо вуҷуд доранд, масалан, Fibonacci Heap (барои алгоритмҳои пешрафта) ё Binomial Heap, дар аксар ҳолатҳо, "хом" ба таври махсус ба хоми дугонаи пурра бо ками ё максимуми он ишора мекунад, бо сабаби истифодаи васеъ дар алгоритмҳои сортинг (масалан, Heapsort) ва наворҳои афзалиятӣ.