Heap (gb.data)
Essa classe implementa uma estrutura de dados heap dinâmico. Pode ser um MinHeap ou um MaxHeap, dependendo de que modo você especifica a construção.
Ser "dinâmica" significa que esta classe permite que você atualize os dados ou a posição dos elementos que já estão no heap.
Properties
Count
|
Retorna o número de elementos na Heap.
|
First
|
Retorna ou define o primeiro elemento do Heap.
|
IsEmpty
|
Retorna se o Heap está vazio.
|
Methods
Insert
|
Insere um elemento no Heap.
|
Remove
|
Remove o primeiro elemento.
|
Update
|
Encontra todas as ocorrências Old e substitui por New . Esta é uma operação O(n).
Além disso, a pilha tem que ser reconstruída, se, foi realizada
mais de uma substituição.
|
Objetos no Heap são todas as variantes. A ordenação no heap é definido implicitamente via comparação destes valores. Você pode colocar
valores primitivos (boolean, integer, string, etc.) e também objetos. O método especial _compare() é usada para comparar objetos.
Observe que você não pode comparar objetos para primitivas ou objetos de diferentes classes em Gambas (no momento da redação deste texto). Se não
manter o seu heap homogêneo no sentido acima definido, ele irá lançar um erro ao tentar pedir em si.
Veja também
Heaps em Wikipedia