Reversed string heap elements
use Heap::Elem::StrRev( StrRElem ); use Heap::Fibonacci;
my $heap = Heap::Fibonacci->new; my $elem;
foreach $i ( 'aa'..'bz' ) { $elem = StrRElem( $i ); $heap->add( $elem ); }
while( defined( $elem = $heap->extract_top ) ) { print "Largest is ", $elem->val, "\n"; }
Heap::Elem::StrRev is used to wrap string values into an element that can be managed on a heap. The top of the heap will have the largest element still remaining. (See Heap::Elem::Str if you want the heap to always return the smallest element.)
The details of the Elem interface are described in Heap::Elem.
The details of using a Heap interface are described in Heap.
John Macdonald, [email protected]
Copyright 1998-2007, O'Reilly & Associates.
This code is distributed under the same copyright terms as perl itself.
Heap\|(3), Heap::Elem\|(3), Heap::Elem::Str\|(3).