Какая польза от структуры данных Heap?

Я работаю над домашним заданием, связанным с кучей, и я понимаю, как они структурированы. Куча должна иметь каждый узел, удовлетворяющий свойству кучи,

свойство max-heap - это то, что для Куча должна иметь каждый узел, удовлетворяющий свойству кучи, свойство max-heap - это то, что для каждого узла i ...

Я работаю над домашним заданием, связанным с кучей, и я понимаю, как они структурированы. Куча должна иметь каждый узел, удовлетворяющий свойству кучи,

свойство max-heap - это то, что для Куча должна иметь каждый узел, удовлетворяющий свойству кучи, свойство max-heap состоит в том, что для каждого узла i ...

Я работаю над домашним заданием, связанным с кучей, и я понимаю, как они структурированы. Куча должна иметь каждый узел, удовлетворяющий свойству кучи,

свойство max-heap - это то, что для every node i other then the root, Heap[Parent(i)] >= Heap[i]

So at each node, the higher nodes have higher numbers, lower nodes have lower numbers. I understand this. But I can't see a use of a Heap other then to simply get the highest n numbers in a list. I don't see an easy way to search for a particular value and return the node, or to search for the n lowest number (in a max-heap). Both are relatively easy in a binary search tree.

Why wouldn't you just use a simple binary search tree? Or better yet, a balanced binary search tree?

EDIT: I should note, that this is not looking for an answer to a homework problem. The actual homework problem was writing pseudocode for parallel-p-heap for the insert() and extractMax() functions. And I already answered them. They just made me realize that I don't really understand Heaps.

9
задан jb. 8 March 2011 в 03:26
поделиться