ImplementasiTrees (Java) menggunakan Netbean

Kode untuk Mengimplementasikan Tree java menggunakan Netbean
Selamat Mencoba :)




Buatlah Class TreeNode
/**
 *
 * @author Pangling
 */
public class TreeNode {
    int data;
    TreeNode left;
    TreeNode right;

    public TreeNode(int data) {
        this.data = data;
    }
}


Lalu Buat Class BinaryTree, dimana isinya berupa method yang akan di gunakan nanti.
/**
 *
 * @author Pangling
 */
public class BinaryTree {
    TreeNode root;

    public boolean isEmpty(){
        return (root==null);
    }

    public void insert(TreeNode input) {
        if (isEmpty()) {
            root = input;
        } else {
            TreeNode current = root;
            TreeNode parent = null;
            boolean diKiri = true;
                while (current != null) {
                    parent = current;
                    if (current.data < input.data) {
                        current = current.right;
                        diKiri = false;
                    } else if(current.data > input.data){
                        current = current.left;
                        diKiri = true;
                    }else{
                        System.out.println("data "+input.data+" sudah ada");
                        break;
                    }
                }
            if (diKiri) {
                parent.left = input;
            } else {
                parent.right = input;
            }
        }
    }
 
    public void preOrder(){
        preOrder(root);
    }
 
    public void inOrder(){
        inOrder(root);
    }
 
    public void postOrder(){
        postOrder(root);
    }
    
    public void preOrder(TreeNode akar){
       if(akar != null){
         System.out.print(akar.data+" ");
         preOrder(akar.left);
         preOrder(akar.right);
      }
    }
 
    public void inOrder(TreeNode akar){
       if(akar != null){
          inOrder(akar.left);
          System.out.print(akar.data+" ");
          inOrder(akar.right);
      }
    }

    public void postOrder(TreeNode akar){
      if(akar != null){
         postOrder(akar.left);
         postOrder(akar.right);
         System.out.print(akar.data+" ");
      }
    }

    public TreeNode search(int key) {
        TreeNode node = null;
        TreeNode current = root;
        
  while (current != null) {
            if (current.data == key) {
                return node;
            } else {
                if (current.data < key) {
                    current = current.right;
                } else {
                    current = current.left;
                }
            }
        }
        return node;
    }
}

lalu implementasikan method yang dibuat tadi kedalam class main
/**
 *
 * @author Pangling
 */
public class BinaryTreeApp {
    public static void main(String[] args) {
        BinaryTree tree = new BinaryTree();
        TreeNode node;
        node = new TreeNode(5);
        tree.insert(node);
        node = new TreeNode(3);
        tree.insert(node);
        node = new TreeNode(4);
        tree.insert(node);

        System.out.print("Traversal dengan preorder :");
        tree.preOrder();
        System.out.print("\nTraversal dengan inorder :");
        tree.inOrder();
        System.out.print("\nTraversal dengan postorder :");
        tree.postOrder();
        System.out.println();
    }
}


Komentar

Postingan populer dari blog ini

Membuat rata-rata (Java) Menggunakan Netbean