• Home
  • University of the People
  • Data Structures (proctored course) CS 3303
  • Data Structures Programming Assignment

Data Structures Programming Assignment

Programming Assignment 4 CS 3303 - Data Structures University of the People Introduction: In this assignment, we studied the use of the Binary search tree and implemented it in our own way. Class Main: import java.util.Scanner; public class main { public static void main(string[] args) ( Scanner sc = new Scanner(System.in); BinaryTree newTree = new BinaryTree(); while(sc.hasNextInt()) ( System.out.println("Enter the value of the current node in the tree, press -999 to exit: "); int value = sc.nextInt(); if(value == -999)( break; newTree.insert(value); System.out.println("The height of the tree is: " newTree.getHeight()); System.out.println("The size of the tree is: newTree.getsize()); int find = sc.nextInt(); newTree.find(find)); Class treeNode: public class treeNode { int data; treeNode left; treeNode right; public treeNode(int value) ( this.data = value; Class BinaryTree: public class BinaryTree { treeNode root; public BinaryTree() { root = null; public BinaryTree(int value) ( root = new treeNode(value); public void insert(int value) ( if(root == null) ( root = new treeNode(value); } else { insert(root, value); public void insert(treeNode node, int value) ( if(value < node.data) ( if(node.left null)( node.left = new treeNode(value) ; } else { insert(node.left, value); } else { if(node.right == null) { node.right = new treeNode(value); else{ insert(node.right, value); public void print() { print(root); public void print(treeNode node) ( if(node != null) ( System.out.print(node.data + " "; print(node.left); print(node.right); public int getHeight() ( return getHeight(root); public int getHeight(treeNode node) return 0; int leftHeight = getHeight(node.left); int rightHeight = getHeight(node.right); if(leftHeight > rightHeight) ( return leftHeight + 1; } else { return rightHeight + 1; public int getsize(