Database System Concepts
Database System Concepts
7th Edition
ISBN: 9780078022159
Author: Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher: McGraw-Hill Education
Bartleby Related Questions Icon

Related questions

Question

JavaScript: Search the Tree

A binary search tree is a data structure that consists of JavaScript objects called "nodes". A tree always has a root node which holds its own integer valueproperty and can have up to two child nodes (or leaf nodes), a left and right attribute. A leaf node holds a value attribute and, likewise, a left and rightattribute each potentially pointing to another node in the binary tree. Think of it as a Javascript object with potentially more sub-objects referenced by the left and right attributes (as seen in assignment 4). There are certain rules that apply to a binary tree:

  • A node's left leaf node has a value that is <= than to its own value
  • A node's right leaf node has a value that is => its own value

In other words:

let node = {
value: <some number>
left: <a node object with value attribute <= this object's value>
right: <a node object with value attribute >= this object's value>
}

If you need a visual aid, below is an example of what a binary tree looks like according to the above rules: -- image attached.

 

You will be writing a function called isPresent that takes two arguments: the root object and a value (number), and returns a boolean: true if the value is present in the tree or false if it is not present.

function isPresent(root, value) {
// your code here
// return boolean
}

Let's translate the above image into a familiar JavaScript object below as an example:


let tree = {
"value": 100,
"left": {
"value": 50,
"left": {
"value": 25,
"left": null,
"right": null
},
"right": {
"value": 75,
"left": null,
"right": null
}
},
"right": {
"value": 150,
"left": null
"right": null
}
}

console.log(isPresent(tree, 25))

Output: true
Reasoning: 25 is the value of a leaf node in the binary tree
..
"left": {
"value": 25,
"left": null,
"right": null
},

100
50
150
25
75
expand button
Transcribed Image Text:100 50 150 25 75
Expert Solution
Check Mark
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education