├── Main.java └── README.md /Main.java: -------------------------------------------------------------------------------- 1 | import java.util.*; 2 | 3 | public class Main { 4 | public static void main(String[] args) { 5 | Scanner sc=new Scanner(System.in); 6 | //object creation for BST class 7 | BST o=new BST(); 8 | int n=sc.nextInt(); 9 | for(int i=0;idupRoot.data){ 48 | //calling recursive insert but this time with dupRoot->right as dupRoot 49 | dupRoot.right=insertRecursively(dupRoot.right,key); 50 | } 51 | //condition for left side insertion 52 | else if(keyleft as dupRoot 54 | dupRoot.left=insertRecursively(dupRoot.left,key); 55 | } 56 | //return for original Root 57 | return dupRoot; 58 | } 59 | //inOrder traversal 60 | void inOrder(node Root){ 61 | if(Root!=null){ 62 | //traversing till left end 63 | inOrder(Root.left); 64 | //printing data 65 | System.out.print(Root.data+" "); 66 | //traversing till right side end 67 | inOrder(Root.right); 68 | } 69 | 70 | } 71 | //preOrder traversal 72 | void preOrder(node Root){ 73 | if(Root!=null){ 74 | //printing data 75 | System.out.print(Root.data+" "); 76 | //traversing till left end 77 | inOrder(Root.left); 78 | //traversing till right side end 79 | inOrder(Root.right); 80 | } 81 | } 82 | //postOrder traversal 83 | void postOrder(node Root){ 84 | if(Root!=null){ 85 | //traversing till left end 86 | inOrder(Root.left); 87 | //traversing till right side end 88 | inOrder(Root.right); 89 | //printing data 90 | System.out.print(Root.data+" "); 91 | } 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | BST Implementation using Java 2 | --------------------------------------------------------------------------------