Computer Science: An Overview (13th Edition) (What's New in Computer Science)
13th Edition
ISBN: 9780134875460
Author: Glenn Brookshear, Dennis Brylow
Publisher: PEARSON
expand_more
expand_more
format_list_bulleted
Question
Chapter 8, Problem 29CRP
Program Plan Intro
Tree:
Tree is an abstract data structure. It has parent node which has children nodes one at left side and other at right side. Each node of the tree contains three cells.
Expert Solution & Answer
Want to see the full answer?
Check out a sample textbook solutionStudents have asked these similar questions
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?
PLEASE PROVIDE A CORRECT SOLUTION BY COMPLETING THE GIVEN CODE BELOW :)COMPLETE THE GIVEN CODE BELOW TO SOLVE THE PROBLEM - PYTHONIn this problem, you are going to implement a filesystem using a tree data structure. Similar to a filesystem, each node (or file), may have multiple children. If the specified path does not exist, then you should disregard that file. Once you are done adding elements to the filesystem, you should print the directory structure in the specified format.
Required modifications: 1. Insertion of a new element 2. Printing of the directory from the root node. 3. Parsing of the input.
Input Format
First line is the name of the root directory.
Second line, n, is the number of subdirectories that follows.
For each line that follows, it shows the following format:
Filename-root node,next path,next path,...
Constraints
You may assume that the filenames are all alphabetical characters with no special characters.
n < 100
The maximum path length is 20…
Answer the following questions using python and without using any of its libraries or OOP .
a) Using the helper function insert (bst, key), create the binary search tree that results from inserting the following keys in the order given: 68, 88, 61, 89, 94, 50, 4, 76, 66, and 82.
b) Using the helper function exist (bst, key), check whether key 50 exists in resultant Binary Search Tree.
c) Using the helper function exist (bst, key), check whether key 49 exists in resultant Binary Search Tree.
d) Using the helper function minimum (bst, starting_node), find the node with the minimum value in resultant Binary Search Tree from starting node = 68.
e) Using the helper function minimum (bst, starting_node), find the node with the minimum value in resultant Binary Search Tree from starting node = 88.
f) Using the helper function maximum (bst, starting_node), find the node with the maximum value in resultant Binary Search Tree from starting node = 68.
g) Using the helper function maximum (bst,…
Chapter 8 Solutions
Computer Science: An Overview (13th Edition) (What's New in Computer Science)
Ch. 8.1 - Give examples (outside of computer science) of...Ch. 8.1 - Prob. 2QECh. 8.1 - Prob. 3QECh. 8.1 - Prob. 4QECh. 8.1 - Prob. 5QECh. 8.2 - In what sense are data structures such as arrays,...Ch. 8.2 - Prob. 2QECh. 8.2 - Prob. 3QECh. 8.3 - Prob. 1QECh. 8.3 - Prob. 2QE
Ch. 8.3 - Prob. 3QECh. 8.3 - Prob. 4QECh. 8.3 - Modify the function in Figure 8.19 so that it...Ch. 8.3 - Prob. 7QECh. 8.3 - Prob. 8QECh. 8.3 - Draw a diagram representing how the tree below...Ch. 8.4 - Prob. 1QECh. 8.4 - Prob. 2QECh. 8.4 - Prob. 3QECh. 8.4 - Prob. 4QECh. 8.5 - Prob. 1QECh. 8.5 - Prob. 3QECh. 8.5 - Prob. 4QECh. 8.6 - In what ways are abstract data types and classes...Ch. 8.6 - What is the difference between a class and an...Ch. 8.6 - Prob. 3QECh. 8.7 - Suppose the Vole machine language (Appendix C) has...Ch. 8.7 - Prob. 2QECh. 8.7 - Using the extensions described at the end of this...Ch. 8.7 - In the chapter, we introduced a machine...Ch. 8 - Prob. 1CRPCh. 8 - Prob. 2CRPCh. 8 - (Asterisked problems are associated with optional...Ch. 8 - Prob. 4CRPCh. 8 - (Asterisked problems are associated with optional...Ch. 8 - Prob. 6CRPCh. 8 - Prob. 7CRPCh. 8 - Prob. 8CRPCh. 8 - Prob. 9CRPCh. 8 - Prob. 10CRPCh. 8 - Prob. 11CRPCh. 8 - Prob. 12CRPCh. 8 - Prob. 13CRPCh. 8 - Prob. 14CRPCh. 8 - Prob. 15CRPCh. 8 - Prob. 16CRPCh. 8 - Prob. 17CRPCh. 8 - Prob. 18CRPCh. 8 - Design a function to compare the contents of two...Ch. 8 - (Asterisked problems are associated with optional...Ch. 8 - (Asterisked problems are associated with optional...Ch. 8 - Prob. 22CRPCh. 8 - Prob. 23CRPCh. 8 - Prob. 24CRPCh. 8 - (Asterisked problems are associated with optional...Ch. 8 - Prob. 26CRPCh. 8 - Prob. 27CRPCh. 8 - Prob. 28CRPCh. 8 - Prob. 29CRPCh. 8 - Prob. 30CRPCh. 8 - Design a nonrecursive algorithm to replace the...Ch. 8 - Prob. 32CRPCh. 8 - Prob. 33CRPCh. 8 - Prob. 34CRPCh. 8 - Draw a diagram showing how the binary tree below...Ch. 8 - Prob. 36CRPCh. 8 - Prob. 37CRPCh. 8 - Prob. 38CRPCh. 8 - Prob. 39CRPCh. 8 - Prob. 40CRPCh. 8 - Modify the function in Figure 8.24 print the list...Ch. 8 - Prob. 42CRPCh. 8 - Prob. 43CRPCh. 8 - Prob. 44CRPCh. 8 - Prob. 45CRPCh. 8 - Prob. 46CRPCh. 8 - Using pseudocode similar to the Java class syntax...Ch. 8 - Prob. 48CRPCh. 8 - Identify the data structures and procedures that...Ch. 8 - Prob. 51CRPCh. 8 - In what way is a class more general than a...Ch. 8 - Prob. 53CRPCh. 8 - Prob. 54CRPCh. 8 - Prob. 55CRPCh. 8 - Prob. 1SICh. 8 - Prob. 2SICh. 8 - In many application programs, the size to which a...Ch. 8 - Prob. 4SICh. 8 - Prob. 5SICh. 8 - Prob. 6SICh. 8 - Prob. 7SICh. 8 - Prob. 8SI
Knowledge Booster
Similar questions
- COMPLETE THE GIVEN CODE BELOW TO SOLVE THE PROBLEM - PYTHONIn this problem, you are going to implement a filesystem using a tree data structure. Similar to a filesystem, each node (or file), may have multiple children. If the specified path does not exist, then you should disregard that file. Once you are done adding elements to the filesystem, you should print the directory structure in the specified format. Required modifications: 1. Insertion of a new element 2. Printing of the directory from the root node. 3. Parsing of the input. Input Format First line is the name of the root directory. Second line, n, is the number of subdirectories that follows. For each line that follows, it shows the following format: Filename-root node,next path,next path,... Constraints You may assume that the filenames are all alphabetical characters with no special characters. n < 100 The maximum path length is 20 (including the root directory). You may assume that there are no similar…arrow_forwardGiven the definitions of a Node struct and head pointer, write C++ statements to perform the following tasks: a.output the count of all the numbers in the list that are greater than 20 b.output the value of the node preceding the node containing the value 100.c.assuming p is already pointing to a node, insert a node containing 25 after that node.arrow_forwardGiven the following infix expression: (28 * (33 - 3) + 10) / (4 * 0.5) % 4 Give the equivalent postfix expression Draw the tree corresponding to the recursive calls to evaluate the postfix expression. What is the depth of your tree?arrow_forward
- Double pointers: Describe how this operation can be done in O(1) time if there are pointers in each node to both the previous and the next node.arrow_forwardComputer Science Convert the following expressions to both Prefix and Postfix / Infix and create the binary trees which represent them. A. P * (Q + R) + S / T * W - X * Y + Z B. (A + B) * (C + D * E) / F / G / H+I C. J K L $ * M N - P * + Q R * - S +arrow_forwardData structures and algorithm C++ Consider the binary search tree in the figure below. The numbers simply label the nodes so that you can reference them; they do not indicate the contents of the nodes. The answer to this question is the node position to the left of the node (the numbers 1-31). Beginning with an empty binary search tree, consider the binary search tree that is formed when you insert the following values in the order given: W, T, A, B, E At what position is T?arrow_forward
- Create a binary tree implementation using the recursive technique taught in the chapter. Each node in this method is a binary tree. As a result, a binary tree has a reference to the element stored at its root, as well as pointers to its left and right subtrees.You should also add a reference to its parent.arrow_forwardThe following is a sequence of stack operationsS1.push (12);S1.push (-5);Int t1 = S1.pop();S1.push (-8);S1.push (20);Int t2 = S1.topValue();S1.pop ();S1.push (4);I. Assuming all instructions execute in the given sequence, draw four diagrams, showing the contents of the stack, after executing the second, fourth, sixth, and eighth instructions. In each diagram, include the values of all elements in the stack, and a pointer denoting the current "top" of the stack.II. What are the values of t1 and t2 after the code executes?arrow_forwardNeed to answer in C language: Part 1: I need to define a binary search tree data structure and need to implement the following functions: Insert Sorted 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. Print Elements void inorderTraversal(BSTREE root, FILE *fp): root points to a node in a binary search tree. This function does not return anything, but prints out, to the file specified, the nodes in the tree rooted at “root” by performing an inorder traversal. Part 2: Test the performance of the designed data structure using theoretical and experimental approaches as follows: Dataset 1-Dataset is sorted- Add code to insert the numbers 1...n in that order in a binary search tree. Run it on different values of n where : n = 20,000 n = 50,000 n = 100,000 Do an in-order traversal of the tree, printing out the contents to a file…arrow_forward
- Describe how the pointer data type can be used to implement a method for one of the data structures (i.e., Linked Lists, Stacks, Queues, Binary Trees, Graph ) that were described in the chapters we covered in the textbook. Specifically, choose a method and describe the way pointers are (or can be) used in that method to accomplish its purpose.arrow_forwardLanguage/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…arrow_forwardFind the errors in the program then correct them. CODE: #include <bits/stdc++.h>using namespace std; /* A binary tree node has key, pointer to leftchild and a pointer to right child */struct Node { int key; struct Node *left, *right}; /* function to create a new node of tree andreturn pointer */struct Node* newNode(int key){ struct Node* temp = new node; temp->key = key; temp->left = temp->right = NULL; return temp;}; /* Inorder traversal of a binary tree*/void inorder(struct Node* temp){ if (!temp) return 0 inorder(temp->left); cout << temp->key << " "; inorder(temp->right)} /* function to delete the given deepest node(d_node) in binary tree */void deletDeepest(struct Node* root, struct Node* d_node){ queue<struct Node*> q q.push(root); // Do level order traversal until last node struct Node* temp; while (!q.empty()) { temp = q.front(); q.pop(); if (temp…arrow_forward
arrow_back_ios
SEE MORE QUESTIONS
arrow_forward_ios
Recommended textbooks for you
- C++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage Learning
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning