Archívum - Feb 22, 2012 - Fórum téma
Kiegyensúlyozott-e az adott bináris fa
Egy bináris fáról, hogyan tudom megállapítani, hogy kiegyensúlyozott-e és aztán azzá tenni?
Eddig a forrás ilyen:[colorer=javascript]package binfa;
public class Csucs {
protected int elem;
Csucs bcs, jcs;
public Csucs (int elem) {
this.e
Eddig a forrás ilyen:
package binfa;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.Scanner;
public class Binfa {
public static void main(String[] args) throws FileNotFoundException {
RendezettBinfa rbf2 = new RendezettBinfa();
Scanner s = null;
try {
s = new Scanner (
new BufferedReader (
new FileReader ("szamok.txt")));
while (s.hasNextInt()) {
rbf2.addElem(s.nextInt());
}
} finally {
if (s != null) {
s.close();
}
}
System.out.println(rbf2.inorder());
System.out.print("Magassága: ");
System.out.println(rbf2.height());
System.out.println();
/**/
RendezettBinfa rbf = new RendezettBinfa();
rbf.addElem(4);
rbf.addElem(2);
rbf.addElem(1);
rbf.addElem(3);
rbf.addElem(6);
rbf.addElem(5);
rbf.addElem(7);
System.out.println(rbf); // inorder eljárás, mert a gyökér a bal- és a jobbrészfa kiírása között van
System.out.print("Inorder: ");
System.out.println(rbf.inorder());
System.out.print("Postorder: ");
System.out.println(rbf.postorder());
System.out.print("Magassága: ");
System.out.println(rbf.height());
System.out.print("Preorder: ");
System.out.println(rbf.preorder());
/*
Csucs cs = new Csucs(5);
Csucs bcs = new Csucs(6);
Csucs jcs = new Csucs(7);
cs.addLeft(bcs);
cs.addRight(jcs);
System.out.println(cs); // *.toString
cs.setElem(1);
cs.bcs.setElem(2);
jcs.setElem(3);
System.out.println(cs);
// System.out.println(jcs);
*/
}
}
public class Csucs {
protected int elem;
Csucs bcs, jcs;
public Csucs (int elem) {
this.e