And here's a perfect situation to take advantage of
Sub::Lexical's ability to emulate nested subs ...
use Sub::Lexical;
sub find_key_dupes {
my $binary_tree=shift;
my $key=shift;
my @dupes;
my sub get_dupes($) {
my $node=shift;
return unless $node;
if ($node->{key} lt $key) {
get_dupes($node->{right});
} else {
push @dupes,$node if $node->{key} eq $key;
get_dupes($node->{left});
}
}
get_dupes($binary_tree);
return \@dupes;
}
Thanks
demerphq, I'll be using this as valid example code in future.
<simpsons voice="Mr. Burns">ehhhxcellent</simpsons>.
HTH
_________
broquaint