Gute Morgen ihr LIeben,
na hattet ihr ein schönes WE, meines war grauenhaft.
Zur Ablenkung heute morgen, hab ich mein .pm verändert. Habt ihr verbesserungsvorschläge, über de ich mich freuen kann?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#!c:/perl
#package binärerbaum;
use strict;
use warnings;
sub knot { return ( { 'zahl' => shift,
'linksweg' => undef,
'rechtsweg' => undef } );
}
sub newtree {
######################
# Erstellen des Trees
my $ref_liste1 = shift;
my $zahl = undef;
my $ref_wurzel = undef;
for my $zzahl (@$ref_liste1){
my $refvalue = $ref_wurzel;
if ($zahl)
{ while (1) {
############################
#Beginn des Vergleichs
if($zzahl < $$refvalue{'zahl'}) {
if(defined($$refvalue{'linksweg'}))
{
$refvalue = $$refvalue{'linksweg'};
}
else {
$$refvalue{'linksweg'} = knot($zzahl);
$zahl = $ref_wurzel
last; #Ende
}
}
#######
#wenns Links nicht mehr weiter geht, geh rechts weiter
else { if ($zzahl > $$$refvlue {'zahl'}) {
if(defined($$refvalue{'rechtsweg'}))
{$refvalue = $$refvalue{'rechtsweg'};
}
else {
$$refvalue{'rechtsweg'} = knot($zzahl);
last;
}
}
}
}
return($ref_wurzel);
}
########
#Hauptprogramm
########
###################
#Ausgabe des Trees
####
sub ausgabe {
my $self = shift;
my $refvalue = shift;
if(defined($self->{'ref_wurzel'}->{'linksweg'})) {
ausgabe($$refvalue{'linksweg'})
}
print "$self->{'ref_wurzel'}->{'zahl'}\n";
if(defined($self->{'ref_wurzel'}->{'rechtsweg'})) {
ausgabe($$refvalue{'rechtsweg'})
}
}
ausgabe($ref_wurzel);
sub new {
my $class = shift;
my $self = {};
bless( $self, $class );
my @liste = @_;
$self->{'ref_wurzel'} = newtree (\@liste);
return $self;
}
###############
#Hinzufügen weiterer Äste
###############
sub hinzufuegen {
my $self = shift;
my @newList = @_;
if (defined($self->{ref_wurzel})){
my $list = $self->{Liste2};
foreach my $neueZahl (@newList)
{ push(@$list, $neueZahl); };
$self->{ref_wurzel} = newtree ($list);
}
}
}
1;
ob es läuft weiß ich noch nicht habs noch nicht ausprobiert, mach ich aber gleich, wenn ich mein .pl fertig geschrieben hab