TestBaeume.java

import java.io.*;
import algorithmen.*;

public class TestBaeume {
  
  public static void main(String[] args) throws IOException {
    
    IOTools io = new IOTools();
    
    // starte mit leeren Bäumen
    Baum sortierBaum = new Baum();
    AVLBaum avlBaum = new AVLBaum();
    
    // Werteingabe oder Zufallszahlen?
    boolean werteErzeugen = io.jaOderNein("Sollen Werte für die Bäume erzeugt werden");
    
    // Baum füllen
    double[] werte;
    if (werteErzeugen) {
      // Anzahl der Werte abfragen
      int anzahl = io.holeInt("Anzahl der Listenelemente eingeben:");
      werte = new double[anzahl];
      
      // Zufallszahlen erzeugen
      for (int i = 0; i < anzahl; i++) {
        werte[i] = Math.random();
      }
    } else {
      // Werte vom Benutzer erfragen
      werte = io.holeVieleDoubles("Positive Zahlen eingeben");
    }
    
    // fülle die Bäume
    for (int i = 0; i < werte.length; i++) {
      sortierBaum.einfuegen(werte[i]);
      avlBaum.einfuegen(werte[i]);
    }
    
    // gib die Höhe der Bäume und ggf. die Bäume selbst aus
    System.out.println("Höhe des Sortierbaums: " + sortierBaum.hoehe());
    System.out.println("Höhe des AVL-Baums   : " + avlBaum.hoehe());

    if (io.jaOderNein("Sollen die Bäume ausgegeben werden")) {
      System.out.println("Sortierbaum:");
      System.out.println(sortierBaum);
      System.out.println("\nAVL-Baum:");
      System.out.println(avlBaum);
    }
  }
}