Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

You are asked to Add the binary tree operation (Delete) Add the level order traversing to the code given in the (BST Example), so the

You are asked to

Add the binary tree operation (Delete)

Add the level order traversing to the code given in the (BST Example), so the output will be as follow

OUTPUT: POST ORDER, PRE ORDER, IN ORDER, LEVEL ORDER

In this example code the available options for inputs are 1) insert 2) search 3) count node 4) check empty Just add delete as one more input 5) Delete /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package btnode; /** * * @author Ali */ import java.util.Scanner; public class BTNode { BTNode left, right; int data; /* Constructor */ public BTNode() { left = null; right = null; data = 0; } /* Constructor */ public BTNode(int n) { left = null; right = null; data = n; } /* Function to set left node */ public void setLeft(BTNode n) { left = n; } /* Function to set right node */ public void setRight(BTNode n) { right = n; } /* Function to get left node */ public BTNode getLeft() { return left; } /* Function to get right node */ public BTNode getRight() { return right; } /* Function to set data to node */ public void setData(int d) { data = d; } /* Function to get data from node */ public int getData() { return data; } } /* Class BT */ class BT { private BTNode root; /* Constructor */ public BT() { root = null; } /* Function to check if tree is empty */ public boolean isEmpty() { return root == null; } /* Functions to insert data */ public void insert(int data) { root = insert(root, data); } /* Function to insert data recursively */ private BTNode insert(BTNode node, int data) { if (node == null) node = new BTNode(data); else { if (node.getRight() == null) node.right = insert(node.right, data); else node.left = insert(node.left, data); } return node; } /* Function to count number of nodes */ public int countNodes() { return countNodes(root); } /* Function to count number of nodes recursively */ private int countNodes(BTNode r) { if (r == null) return 0; else { int l = 1; l += countNodes(r.getLeft()); l += countNodes(r.getRight()); return l; } } /* Function to search for an element */ public boolean search(int val) { return search(root, val); } /* Function to search for an element recursively */ private boolean search(BTNode r, int val) { if (r.getData() == val) return true; if (r.getLeft() != null) if (search(r.getLeft(), val)) return true; if (r.getRight() != null) if (search(r.getRight(), val)) return true; return false; } /* Function for inorder traversal */ public void inorder() { inorder(root); } private void inorder(BTNode r) { if (r != null) { inorder(r.getLeft()); System.out.print(r.getData() +" "); inorder(r.getRight()); } } /* Function for preorder traversal */ public void preorder() { preorder(root); } private void preorder(BTNode r) { if (r != null) { System.out.print(r.getData() +" "); preorder(r.getLeft()); preorder(r.getRight()); } } /* Function for postorder traversal */ public void postorder() { postorder(root); } private void postorder(BTNode r) { if (r != null) { postorder(r.getLeft()); postorder(r.getRight()); System.out.print(r.getData() +" "); } } } /* Class BinaryTree */ public class BinaryTree { public static void main(String[] args) { Scanner scan = new Scanner(System.in); /* Creating object of BT */ BT bt = new BT(); /* Perform tree operations */ System.out.println("Binary Tree Test "); char ch; do { System.out.println(" Binary Tree Operations "); System.out.println("1. insert "); System.out.println("2. search"); System.out.println("3. count nodes"); System.out.println("4. check empty"); int choice = scan.nextInt(); switch (choice) { case 1 : System.out.println("Enter integer element to insert"); bt.insert( scan.nextInt() ); break; case 2 : System.out.println("Enter integer element to search"); System.out.println("Search result : "+ bt.search( scan.nextInt() )); break; case 3 : System.out.println("Nodes = "+ bt.countNodes()); break; case 4 : System.out.println("Empty status = "+ bt.isEmpty()); break; default : System.out.println("Wrong Entry "); break; } /* Display tree */ System.out.print(" Post order : "); bt.postorder(); System.out.print(" Pre order : "); bt.preorder(); System.out.print(" In order : "); bt.inorder(); System.out.println(" Do you want to continue (Type y or n) "); ch = scan.next().charAt(0); } while (ch == 'Y'|| ch == 'y'); } }image text in transcribed 

Applications Places @ LibreOffice writer Sat 17:36. Assignment 2-Updated-2017.docx - LibreOffice Writer Elle Edit Yiew Insert Format Styles Table Tools Window Heip New-Open -Save PDF Print Print Preview Cut Copy Paste-Clone | Undo Redo - I Find & Replace Spelling Formatt ng Marks | Table lmage Chart Text Box | Page Break Field -Symbol | Hyperlink : Change AnchorWrap Off Page Wrap Optimal Page Wrap Wrap Through | Allgn Left Center Horizontal Align Right Base line at top Base line centered Base line at bottom Bring to Front Forward One Back One Pre order 13579 6 4 2 In orderS7 8 5 6 3 41 2 Level order:12 3456789 Do you rant to continue Tipa y or n- Binazy Tree Oparationa 1. insert 2 search 4. check eptyY Enter integer element to insert 10 Post order : 10 987 54322 In orde 10 7 8 5 6 34 12 Level order1 2 3 4 5 67 B s 10 n. BUILD SUCCESS DUL [total tie: 1 minute 16 econd ) Page 1 of 1 45 words, 236 characters Default Style 0.00 0.17 3.97 x 4.74 120%

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

101 Database Exercises Text Workbook

Authors: McGraw-Hill

2nd Edition

0028007484, 978-0028007489

Students also viewed these Databases questions

Question

To solve p + 3q = 5z + tan( y - 3x)

Answered: 1 week ago

Question

14-18 Compare the two major types of planning and control tools.

Answered: 1 week ago