/**
* Binary tree class.
- * A binary tree is a ordered value tree with only two childs by node
+ * A binary tree is a ordered value tree with only two childs per node
*/
public class ArbreBinaire {
private IntNode inserer_rec(IntNode currentNode, int value) {
if (currentNode == null) {
return new IntNode(value);
- } else if (value < currentNode.getData()) {
+ }
+ if (value < currentNode.getData()) {
currentNode.setLeftNode(inserer_rec(currentNode.getLeftNode(), value));
} else if (value > currentNode.getData()) {
currentNode.setRightNode(inserer_rec(currentNode.getRightNode(), value));
private IntNode supprimer_rec(IntNode currentNode, int value) {
if (currentNode == null) {
return null;
- } else if (value == currentNode.getData()) {
+ }
+ if (value == currentNode.getData()) {
if (currentNode.getLeftNode() == null && currentNode.getRightNode() == null) {
return null;
} else if (currentNode.getRightNode() == null) {
}
private void afficher_arbre_rec(IntNode currentNode, int column) {
- int i;
-
if (currentNode != null) {
afficher_arbre_rec(currentNode.getRightNode(), column + 1);
- for (i = 0; i < column; i++) {
+ for (int i = 0; i < column; i++) {
System.out.print(" ");
}
System.out.println(currentNode.getData());
}
public static void main(String[] args) {
- ArbreBinaire Btree = new ArbreBinaire();
+ ArbreBinaire bTree = new ArbreBinaire();
+
+ bTree.inserer(2);
+ bTree.inserer(6);
+ bTree.inserer(4);
+ bTree.inserer(5);
+ bTree.inserer(1);
+ bTree.inserer(0);
+
+ bTree.afficher();
+ bTree.afficher_arbre();
- Btree.inserer(2);
- Btree.inserer(6);
- Btree.inserer(4);
- Btree.inserer(5);
- Btree.inserer(1);
- Btree.inserer(0);
+ bTree.supprimer(4);
- Btree.afficher();
- Btree.afficher_arbre();
+ bTree.afficher();
+ bTree.afficher_arbre();
- Btree.supprimer(4);
+ bTree.supprimer(6);
- Btree.afficher();
- Btree.afficher_arbre();
+ bTree.afficher();
+ bTree.afficher_arbre();
- Btree.supprimer(6);
+ bTree.inserer(2);
+ bTree.inserer(7);
+ bTree.inserer(3);
+ bTree.inserer(9);
+ bTree.inserer(11);
+ bTree.inserer(10);
+ bTree.inserer(8);
+ bTree.inserer(4);
- Btree.afficher();
- Btree.afficher_arbre();
+ bTree.afficher();
+ bTree.afficher_arbre();
}
}