2013-01-02 25 views
5

dov'è l'heap di Fibonacci in STL? e se STL non implementa Fibonacci Heap qual è la migliore pratica per implementarla utilizzando algoritmi e contenitori esistenti in STL?STL per Fibonacci Heap?

+1

C'è un'implementazione in C++ in [Wikipedia] (http://ideone.com/9jYnv) che sembra abbastanza decente. – Rapptz

+2

Probabilmente perché l'STL era abbastanza complesso così com'è e generalmente fornisce solo le funzionalità più utilizzate/necessarie. Come al solito, tuttavia, la spinta lo ha: http://www.boost.org/doc/libs/1_49_0/doc/html/heap.html – Yuushi

risposta

12

boost dispone di an implementation of it. Spero possa aiutare. Non sembra esserci uno nel STL. Ecco un esempio:

for(int n=0;n<40;++n){ 
    std::cout<<"F("<<n<<")="<<fibonacci(n)<<std::endl; 
    } 
0

no, non v'è alcuna Fibonacci heap garantito nella libreria standard

per un esempio di attuazione di un piano di ripartizione personalizzato in C++, vedere la small object allocator in the Loki library


EDIT: mi dispiace, ero pensando a fibonacci buddy system per l'implementazione di un heap di allocazione dinamica della memoria.