fork download
  1. class Node {
  2. int data;
  3. Node left, right;
  4.  
  5. public Node(int item) {
  6. data = item;
  7. left = right = null;
  8. }
  9. }
  10.  
  11. class BinaryTree {
  12. Node root;
  13.  
  14. BinaryTree() {
  15. root = null;
  16. }
  17.  
  18. void insert(int data) {
  19. root = insertRec(root, data);
  20. }
  21.  
  22. Node insertRec(Node root, int data) {
  23. if (root == null) {
  24. root = new Node(data);
  25. return root;
  26. }
  27.  
  28. if (data < root.data)
  29. root.left = insertRec(root.left, data);
  30. else if (data > root.data)
  31. root.right = insertRec(root.right, data);
  32.  
  33. return root;
  34. }
  35.  
  36. void preOrder(Node node) {
  37. if (node != null) {
  38. System.out.print(node.data + " ");
  39. preOrder(node.left);
  40. preOrder(node.right);
  41. }
  42. }
  43.  
  44. public static void main(String[] args) {
  45. BinaryTree tree = new BinaryTree();
  46. int[] values = {11, 6, 8, 19, 4, 10, 5, 17, 43, 49, 31};
  47.  
  48. for (int value : values) {
  49. tree.insert(value);
  50. }
  51.  
  52. System.out.println("Árvore Binária de Busca em pré-ordem:");
  53. tree.preOrder(tree.root);
  54. }
  55. }
  56.  
Success #stdin #stdout 0.16s 55712KB
stdin
Standard input is empty
stdout
Árvore Binária de Busca em pré-ordem:
11 6 4 5 8 10 19 17 43 31 49