sub newtree {
...
my $ref_liste1 = shift;
my $knoten = undef;
my $ref_wurzel = undef;
for my $zzahl (@$ref_liste1){
#my $refvalue = $ref_wurzel;
if ($knoten)
{ while (1)
{
if($zzahl < $knoten->{'zahl'})
if(defined($knoten->{'linksweg'}))
{
$knoten = $knoten->{'linksweg'};
}
else {
$knoten->{'linksweg'} = knot($zzahl);
$knoten = $ref_wurzel;
last; #Ende
}
}
#wenns Links nicht mehr weiter geht, geh rechts weiter
else {
if ($zzahl >= $knoten->{'zahl'}) {
if(defined($knoten->{'rechtsweg'}))
{
$knoten =$knoten->{'rechtsweg'};
}
else {
$knoten->{'rechtsweg'} = knot($zzahl);
$knoten = $ref_wurzel;
last;
}
}
else {
$ref_wurzel= knot($zzahl);
$knoten = $ref_wurzel;}
}
}
}
}
return $ref_wurzel;
}