Algorithm-LineSegments
view release on metacpan or search on metacpan
lib/Algorithm/LineSegments.pm view on Meta::CPAN
#################################################################
# Ordinarily it should be possible to obtain the priority of the
# element on top of the heap, but the chosen module can report
# only the priorities of all elements, which is a bit costly, so
# instead the cost is re-computed here for now.
#################################################################
my $cost = $o{cost}->($ix, $next{$ix});
#################################################################
# The callback can be by calling code to stop the merging process
#################################################################
last unless $o{continue}->($count, $cost);
my $k = $ix;
my $j = $next{$k};
next unless defined $j;
my @merged = map { @{ $q[$_] } } $k, $j;
$q[$k] = undef;
( run in 0.398 second using v1.01-cache-2.11-cpan-8d75d55dd25 )