G
Gast
Gast
Code:
public class Baum {
Knoten wurzel;
private class Knoten {
Knoten Links;
Knoten Rechts;
Integer zahlenwert;
}
public boolean exists(int element) {
Knoten Ba = wurzel;
boolean exists = false;
while (Ba != null) {
exists = Ba.zahlenwert.equals(element);
if (element > Ba.zahlenwert) {
Ba = Ba.Rechts;
}
else {
Ba = Ba.Links;
}
if (exists == true) {
System.out.println("Das Element existiert bereits!");
return exists;
}
}
return exists;
}
public void insert(int element) throws ElementExistsException {
Knoten Ba = wurzel;
Knoten Blatt = new Knoten();
Blatt.zahlenwert = element;
Knoten tmp = Ba;
if(wurzel == null){
wurzel = Blatt;
}
if (true == exists(Blatt.zahlenwert)) {
}
else{
while(Ba != null){
if(Blatt.zahlenwert > Ba.zahlenwert){
tmp = Ba;
Ba = Ba.Rechts;
if(Ba == null){
tmp.Rechts = Blatt;
}
}
else {
tmp = Ba;
Ba = Ba.Links;
if(Ba== null){
tmp.Links = Blatt;
}
}
}
}
} // Anzahl Knoten abfrage anhand von einem Zähler.....
public int NumberofNodes() {
int k = 10;
return k;
}
public int getHeight() {
Knoten Ba = wurzel;
int zaehlerlinks = 0;
int zaehlerrechts = 0;
while(Ba != null){
if(Ba.Rechts!=null){
zaehlerrechts =getHeight(Ba.Rechts);
}
else if (Ba.Links != null){
zaehlerlinks = getHeight(Ba.Links);
}
else{
return Math.max(zaehlerlinks, zaehlerrechts)+1;
}
}
return 0;
}
private int getHeight(Knoten wurzel){
Knoten Ba = wurzel;
int zaehlerlinks = 0;
int zaehlerrechts = 0;
while(Ba != null){
if(Ba.Rechts!=null){
zaehlerrechts = getHeight(Ba.Rechts);
}
else if (Ba.Links != null){
zaehlerrechts = getHeight(Ba.Links);
}
else{
return Math.max(zaehlerlinks, zaehlerrechts)+1;
}
}
return 0;
}
//Kleinster Eintrag im Baum
public int getMinimum() {
}
//größter Eintrag im Baum
public int getMaximum() {
}
// Überprüfen ob AVL Baum und mit hilfe der Hilfsfunktion private boolean isAVLTree(Knoten wurzel)lösen!
public boolean isAVLTree() {
}
private boolean isAVLTree(Knoten wurzel) {
}
}
Hallo leute!
Ich hab komm bei der aufgabe nicht weiter....einiges habe ich schon geschrieben aber die letzten 4 Einträge,weiß ich nicht wie ich lösen soll und wie ich die anzahl der Knoten des Baums anhand eines Zählers realisieren kann?
Die aufgabenstellung ist kommentiert.
Wäre dankbar für eure hilfe...
lg