Advertisement
Guest User

Untitled

a guest
Apr 1st, 2015
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. package Assignment1;
  2.  
  3. public class DictBinTree implements Dict {
  4. Node root = null;
  5. int sizeOfTree = 0;
  6. public void dictbintree(){
  7.  
  8. }
  9. @Override
  10. public void insert(int k) {
  11. sizeOfTree ++;
  12. Node z = new Node(k);
  13. Node y = null;
  14. Node x = root;
  15.  
  16. while (x != null)
  17. {
  18. y = x;
  19. if (z.key < x.key)
  20. {
  21. x = x.left;
  22. } else
  23. {
  24. x = x.right;
  25. }
  26. z.parent = y;
  27.  
  28. }
  29. if (y == null)
  30. {
  31. root = z;
  32. } else if (z.key < y.key)
  33. {
  34. y.left = z;
  35. } else
  36. {
  37. y.right = z;
  38. }
  39. }
  40.  
  41. @Override
  42. public int[] orderedTraversal()
  43. {
  44. int[] orderedTree = new int[sizeOfTree];
  45.  
  46. inorderTreeWalk(orderedTree, root, 0);
  47.  
  48. return orderedTree;
  49. }
  50.  
  51. public int inorderTreeWalk(int[] orderedTree, Node startNode, int index)
  52. {
  53. Node x = startNode;
  54. int i = index;
  55.  
  56. if (x != null)
  57. {
  58. i = inorderTreeWalk(orderedTree, x.left, i);
  59. orderedTree[i++] = x.key;
  60. i = inorderTreeWalk(orderedTree, x.right, i);
  61. }
  62. return i;
  63. }
  64.  
  65. @Override
  66. public boolean search(int k)
  67. {
  68. Node x = root;
  69.  
  70. while (x != null && k != x.key)
  71. if (k < x.key)
  72. {
  73. x = x.left;
  74. } else
  75. {
  76. x = x.right;
  77. }
  78.  
  79. if( x == null)
  80. {
  81. return false;
  82. }
  83. else
  84. {
  85. return true;
  86. }
  87. }
  88.  
  89. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement