You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.5 KiB
37 lines
1.5 KiB
import java.util.*;
|
|
|
|
public class Main {
|
|
public static void main(String[] args) {
|
|
|
|
RBTree<IntComparable> rbTree = new RBTree<>();
|
|
ArrayList<Integer> numbers = new ArrayList<>();
|
|
|
|
// ein eingebauter Mechanismus, der sicherstellt, dass eine Zahl nicht 2-mal vorkommt, sonst würde der Baum nicht funktionieren
|
|
// Füllen der Liste mit Zahlen
|
|
for (int j = 1; j <= 100; j++) {
|
|
numbers.add(j);
|
|
}
|
|
|
|
// Terry newly added
|
|
Collections.shuffle(numbers); // Liste mischen
|
|
|
|
for (int i = 0; i < 15; i++) {
|
|
|
|
int pickedNumber = numbers.remove(0); // Entfernt das Element an dem ersten "Index", return es und speichert es in 'pickedNumber'
|
|
IntComparable randomNum = new IntComparable(pickedNumber);
|
|
|
|
System.out.println("Einfügen: " + randomNum.getValue());
|
|
rbTree.insertNode(randomNum);
|
|
|
|
// Füge das Element ein und aktualisiere die DOT-Datei nach jedem Schritt
|
|
rbTree.printDOTAfterInsert("output_step_" + i + ".dot");
|
|
}
|
|
|
|
// Jetzt können Sie die DOT-Dateien in SVG umwandeln und anzeigen
|
|
// dot -Tsvg output_step_0.dot > output_step_0.svg
|
|
// dot -Tsvg output_step_1.dot > output_step_1.svg
|
|
// ...
|
|
}
|
|
}
|
|
|
|
|