Hi. I am having problems incorporating your output subroutine. Can you help?
use Data::Dumper;
use strict;
use warnings;
my %nodes;
my @children;
while (<>) {
chomp;
my ($c,$p)=split "\t";
push @children,$c unless $nodes{$c};
$nodes{$_}{name}||=$_
for $c,$p;
$nodes{$p}{kids}{$c}=$nodes{$c};
}
delete $nodes{$_}
for @children;
my @roots=keys %nodes;
#print Dumper($nodes{$_}) for @roots;
print_inorder(%nodes);
sub print_inorder {
my $node= shift;
print $node->{name}, "\n";
print_inorder($_)
for sort { $a->{name} cmp $b->{name} }
values %{ $node->{kids} || {} };
}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|