Categories: Assignment Help

University of South Florida JavaScript Binary Tree for Equation Project Hi, I need JavaScript and corresponding HTML code to do the following: The Express

University of South Florida JavaScript Binary Tree for Equation Project Hi, I need JavaScript and corresponding HTML code to do the following:

The Expression Tree is a specific case of a binary tree. When you write an equation, the computer stores the equation in a tree – which stores both the operations and the expression order. I have included code base to create a binary tree as an example or you can use a basis and just expand/edit to meet the functionality below (see attached word doc).

Don't use plagiarized sources. Get Your Custom Essay on
University of South Florida JavaScript Binary Tree for Equation Project Hi, I need JavaScript and corresponding HTML code to do the following: The Express
Get an essay WRITTEN FOR YOU, Plagiarism free, and by an EXPERT!
Order Essay

You will create a binary tree representation of the equation: 3*(x + 5*y)

We will give an example 2 – 3 * 4 + 5

The expression tree for this is;

If we traverse the tree using left – first traversal – the first dead end node is 2, then traverse back up to – and down to * and then down again to 3, then up to * and back down to 4 – so the traversal order without intermediate points is

2, 3, 4, *, – 5, +

The logical execution order is

3, 4, * = result

2, result, – = result

result, 5, + = result

or if you were to put it in logical order 2 – 3*4 + 5 , our original equation. You will create a binary tree representation of the equation

3*(x + 5*y)

Hint: there are plenty of javascript code examples of creating a binary tree (http://www.nczonline.net/blog/2009/06/09/computer-science-in-javascript-binary-search-tree-part-1/ ). HTML CODE:
JavaScript:
var TNode = function(_content) {
this.parent = null;
this.left = null;
this.right = null;
this.content = _content;
}
TNode.prototype.addNode = function(_content) {
var _node = new TNode(_content);
// if no left – add to left
if (this.left == null) {
_node.parent = this;
this.left = _node;
return this;
}
if (this.right == null) {
_node.parent = this;
this.right = _node;
return this;
}
var leftN = this.left.numberOfChildren();
var rightN = this.right.numberOfChildren();
if (leftN < rightN) { this.left.addNode(_content); } else { this.right.addNode(_content); } return this; } TNode.prototype.numberOfChildren = function() { var n = 0; if (this.left != null) { n = 1 + this.left.numberOfChildren(); } if (this.right != null) { n = n + 1 + this.right.numberOfChildren(); } return n; } TNode.prototype.print = function() { var s = this.printNode(); if (this.left != null) { s += this.left.print(); } if (this.right != null) { s += this.right.print(); } return s; } TNode.prototype.printNode = function() { var s = "Node: " + this.content; if (this.left != null) { s += " Left: " + this.left.content; } if (this.right != null) { s = s + " Right: " + this.right.content; } s += ""; return s; } var BinaryTree = function() { this.top = null; this.addNode = function(_content) { // If no top node - add to top if (this.top == null) { var _node = new TNode(_content); this.top = _node; return this; } // otherwise let node select this.top.addNode(_content); return this; } } BinaryTree.prototype.print = function() { if (this.top != null) return this.top.print(); } function createTree() { var tree = new BinaryTree(); tree.addNode('A'); tree.addNode('B'); tree.addNode('C'); tree.addNode('D'); tree.addNode('E'); tree.addNode('F'); tree.addNode('G'); tree.addNode('H'); document.getElementById("output").innerHTML = tree.print(); } Purchase answer to see full attachment

superadmin

Recent Posts

LDR 3302-21.01.01-1A24-S1, Organizational Theory and Behavior

LDR 3302-21.01.01-1A24-S1, Organizational Theory and Behavior Unit III Essay Top of Form Bottom of Form…

3 years ago

Psychology Question | My Essay Helpers

Chapter 9 What are teratogens? Give 5 examples. Define each of these stages: Germinal, embryonic,…

3 years ago

Financial Market Analysis | My Essay Helpers

You are a Financial Analyst that has been appointed to lead a team in the…

3 years ago

Decision theory | My Essay Helpers

This week’s discussion will focus on management decision-making and control in two companies, American corporation…

3 years ago

Literature Question | My Essay Helpers

Mary Rowlandson felt that the man who eventually came to own her, Quinnapin, was “the…

3 years ago