C How to Program (8th Edition)
8th Edition
ISBN: 9780133976892
Author: Paul J. Deitel, Harvey Deitel
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Chapter 12, Problem 12.22E
Program Plan Intro
Program plan:
- Item, svalue, root variableis used for input. There is structure Treenode havingdata, leftptr, rightptr member variables which represents the tree node.
- void insertnode(node **ptr, int value) function inserts the node in the tree and create a tree.
- void inorder(node *ptr) function display the tree values in sorting order.
- node *binaryTreeSearch(node *ptr, int key) searches the value in a tree and returns the NULL or node reference.
Program description:
The main purpose of the program is to create binary search tree, display the tree values and search the value in a tree and return the node reference.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
Language/Type:
C++ binary trees pointers recursion
Write a function named hasPath that interacts with a tree of BinaryTreeNode structures representing an unordered binary tree. The function accepts three parameters: a pointer to the root of the tree, and two integers start and end, and returns true if a path can be found in the tree from start down to end. In other words, both start and end must be element data values that are found in the tree, and end must be below start, in one of start's subtrees; otherwise the function returns false. If start and end are the same, you are simply checking whether a single node exists in the tree with that data value. If the tree is empty, your function should return false.
For example, suppose a BinaryTreeNode pointer named tree points to the root of a tree storing the following elements. The table below shows the results of several various calls to your function:
67
88
52
1
21
16
99
45
Call
Result
Reason
hasPath(tree,
67, 99)
true
path exists…
CO
LL
* Question Completion Status:
QUESTION 3
Write a recursive function, OnlyChild(..), that returns the number of nodes in a binary tree
that has only one child. Consider binaryTreeNode structure is defined as the following.
struct binaryTreeNode
int info;
binaryTreeNode *llink:
binaryTreeNode *rlink;
The function is declared as the following. You must write the function as a recursive function.
You will not get any credits if a non-recursive solution is used.
int OnlyChild(binaryTreeNode *p);
For the toolbar, press ALT+F10 (PC) or ALT+FN+F10 (Mac).
Paragraph
Arial
10pt
B.
^三へ三
三山 三Ex? X2
= E E E 9
Click Save and Submit to save and submit. Click Save All Answers to save all ansuwers.
Is E English (United States)
Focus
||
15
stv
MacBook Air
D00
O00
F4
F5
F8
64
kindly don't copy the code from other websites because it's incorrect.. Thanks
Linked Lists
C Programming :
Develop a Student Information System. The system need to implement the
insertNode(), deleteNode() and displayList() functions. The insertNode() function is
used to insert a new node of student record to the linked list. Assume that the input
id is always unique, thus the linked list shall contain the student records with their
respective id numbers are in ascending order. The displayList() function is used to
display the list after inserting new node and/or after deleting a node. Please refer to
the given structure definition shown in Figure 1, Your system interface should
consider a few element such as user friendly, attractive and appropriate word. You
may add more suitable data in the structure but limited to not more than 3.
The deleteNode() function is used to remove a record of the targeted id from the
linked list. The deleteNode() function shall return the target id if the…
Chapter 12 Solutions
C How to Program (8th Edition)
Ch. 12 - Prob. 12.6ECh. 12 - (Merging Ordered Lists) Write a program that...Ch. 12 - Prob. 12.8ECh. 12 - (Creating a Linked List, Then Reversing Its...Ch. 12 - Prob. 12.10ECh. 12 - Prob. 12.11ECh. 12 - Prob. 12.12ECh. 12 - Prob. 12.13ECh. 12 - Prob. 12.14ECh. 12 - (Supermarket Simulation) Write a program that...
Knowledge Booster
Similar questions
- C++ code Write a program to perform following tasks: Given a binary tree of integers, the task is to write in-order tree traversal method that display node’s data if it is even positive number. In all other cases it should display -1. A.Given an array and an integer N, find elements which are divisible by N, using STL Algorithms in C++. B.Given a vector, reverse this vector using STL in C++ without using predefined functions/algorithms. C;Given an integer array containing repeating elements, find number of occurrences of each element using STL map (without using any predefined method) in C++. MUST BE ALL (A.B.C) IN ONE PROGRAMarrow_forward[] [] partite_sets In the cell below, you are to write a function "partite_sets (graph)" that takes in a BIPARTITE graph as its input, and then returns a single list whose two entries are the partite sets of the graph as lists (the order of the sets outputed does not matter). After compiling the above cell, you should be able to compile the following cell and obtain the desired outputs. print (partite_sets({"A" : ["B", "C"], "B" : partite_sets({"A" : ["B", "C"], "B" : ["A"], "C" : ["A"]}), ["A", "D"], "C" : ["A", "D"], "D" : ["B", "C"]})) This should return [["B","C"], ["A"]] [["A","D"], ["B","C"]] (the order in which the entries appear does not matter) Python Pythonarrow_forwardUse function def showList(self) Precondition: None. Postcondition: Outputs the keys of the elements of the order list. If the list is empty, outputs “Empty list” note: Use python and the concept of doubly Linked Listarrow_forward
- 1. Do some research about binary search trees. 2. Create a structure in C for the nodes of this tree. Which variables do the structure have? 3. Write a function that builds a balanced binary search tree. The input argument of this function is a sorted array of integers. 4. Write a recursive function that inserts a new element to the tree. The input argument of this function is a pointer to the head node of the tree. 5. What is the time complexity of this insertion function?arrow_forward(Python)- Implement functions successor and predecessor. These functions will take two arguments: the root of a tree and an integer. The successor function returns the smallest item in the tree that is greater than the given item. The predecessorfunction returns the largest item in the tree that is smaller than the given item. Both functions will return -1 if not found. Note that the predecessor or successor may exist even if the given item is not present in the tree. Use this template: # Node definition provided, please don't modify it.class TreeNode:def __init__(self, val=None):self.val = valself.left = Noneself.right = None# TODO: Please implement the following functions that return an integer# Return the largest value in the tree that is smaller than given value. Return -1 if not found.def predecessor(root, value):pass# Return the smallest value in the tree that is bigger than given value. Return -1 if not found.def successor(root, value):passif __name__ == "__main__":# TODO:…arrow_forwardC++ Data Structures (Binary Trees)- Write the definition of the function nodeCount that returns the number of nodes in the binary tree. Add this function to the class binaryTreeType and create a program to test this function. Here are the headers: binaryTree.h //Header File Binary Search Tree #ifndef H_binaryTree #define H_binaryTree #include <iostream> using namespace std; //Definition of the Node template <class elemType> struct nodeType { elemType info; nodeType<elemType> *lLink; nodeType<elemType> *rLink; }; //Definition of the class template <class elemType> class binaryTreeType { public: const binaryTreeType<elemType>& operator= (const binaryTreeType<elemType>&); //Overload the assignment operator. bool isEmpty() const; //Function to determine whether the binary tree is empty. //Postcondition: Returns true if the binary tree is empty; // otherwise, returns false. void inorderTraversal() const; //Function to do an inorder…arrow_forward
- C Programming language Part 1: You need to define a data structure for a doubly linked list and a binary search tree. Also, you need to implement the following functions: Insert Sorted LINKEDLIST insertSorted(LINKEDLIST head, int num): head points to the first node in the sorted linked list; num is a number to be inserted in in correct place in the linked list pointed at “head”. The linked list should be sorted after inserting “num”. This function returns the head of the modified head. BSTREE insert(BSTREE root, int num): root points to a node in a binary search tree; num is a number to be inserted in the tree rooted at “root”. This function returns the root of the modified tree. Find an element LINKEDLIST find(LINKEDLIST head,int num): head points to the first node of a linked list; num is a number to be searched for in the linked list started at “head”. This function returns a pointer to the node containing “num” or NULL if num is not found BSTREE find(BSTREE root,int…arrow_forwardComputer Science JAVA Write a program that maintains the names of your friends and relatives and thus serves as a friends list. You should be able to enter, delete, modify, or search this data. You should assume that the names are unique. use a class to represent the names in the friends list and another class to represent the friends list itself. This class should contain a Binary Search Tree of names as a data field. (TreeNode Class BinarySearchTree Class FriendsList Class)arrow_forwardGiven the following C code: void funx (struct Node n) if (n--NULL) return printf ("d ",n->data) funX (n->next) What is the aim of this code for function call funX(head) where head is a pointer that points to the head of linked list? a) Print the contents of linked list b) Print the contents of linked list in reverse order c) Print even nodes of linked list d) Print even nodes of linked list in reverse orderarrow_forward
- struct node{int num;node *next, *before;};start 18 27 36 45 54 63 The above-linked list is made of nodes of the type struct ex. Your task is now to Write a complete function code to a. Find the sum of all the values of the node in the linked list. b. Print the values in the linked list in reverse order. Use a temporary pointer temp for a and b. i dont need a full code just the list partarrow_forwardLanguage: JAVA Script Write a recursive function called 'shortestToLongest' which takes an array of lowercase strings and returns them sorted from shortest to longest. Strings of equal length should be sorted alphabetically. (Hint: stri <str2 will return true if str1 comes before str2 alphabetically) Your function should accept a default argument called 'sorted' which holds the currently sorted elements. Each recursive step should add the shortest string in the strings array to the end of 'sorted'. // Examples: // Sorts strings from shortest to longestlet strings1 = ["abc", "de", " ", "f", "ghijk", "Imno"] shortestToLongest (strings1);// [' ', 'f', 'de', 'abc', 'lmno', 'ghijk'] // Accepts a pre-sorted default parameter let strings2 = ["pomegranate", "persimmon", "peach"]; let sorted ["pea", "pear"];shortestToLongest (strings2, sorted); // ['pea", "pear', 'peach', 'persimmon', 'pomegranate'] // Sorts strings of the same length alphabetically let strings3 = ["dog", "cat",…arrow_forwardTopic: Singly Linked ListImplement the following functions in C++ program. Read the question carefully. (See attached photo for reference) void isEmpty() This method will return true if the linked list is empty, otherwise return false. void clear() This method will empty your linked list. Effectively, this should and already has been called in your destructor (i.e., the ~LinkedList() method) so that it will deallocate the nodes created first before deallocating the linked list itself.arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education