summaryrefslogtreecommitdiff
path: root/assets/javascripts/rectangles/models/tree.js
diff options
context:
space:
mode:
Diffstat (limited to 'assets/javascripts/rectangles/models/tree.js')
-rw-r--r--assets/javascripts/rectangles/models/tree.js16
1 files changed, 8 insertions, 8 deletions
diff --git a/assets/javascripts/rectangles/models/tree.js b/assets/javascripts/rectangles/models/tree.js
index 577c41a..8193988 100644
--- a/assets/javascripts/rectangles/models/tree.js
+++ b/assets/javascripts/rectangles/models/tree.js
@@ -1,35 +1,35 @@
-var tree = function(n, data){
+var Tree = function(n, data){
this.lo = null
this.hi = null
this.value = n
this.data = data
}
-tree.prototype.find = function(n){
+Tree.prototype.find = function(n){
if (n == this.value) return this
if (n < this.value) return this.lo ? this.lo.find(n) : this
if (n > this.value) return this.hi ? this.hi.find(n) : this
}
-tree.prototype.add = function(n, data){
+Tree.prototype.add = function(n, data){
var closest = this.find(n)
if (n == closest.value) return closest
- if (n < closest.value) return closest.lo = new tree(n, data)
- if (n > closest.value) return closest.hi = new tree(n, data)
+ if (n < closest.value) return closest.lo = new Tree(n, data)
+ if (n > closest.value) return closest.hi = new Tree(n, data)
}
-tree.prototype.toArray = function(){
+Tree.prototype.toArray = function(){
var a = []
if (this.lo) a = a.concat(this.lo.toArray())
a.push(this.data)
if (this.hi) a = a.concat(this.hi.toArray())
return a
}
-tree.prototype.toString = function(){
+Tree.prototype.toString = function(){
var s = "";
if (this.lo) s += this.lo.toString()
s += this.value + ","
if (this.hi) s += this.hi.toString()
return s
}
-tree.prototype.depth = function(){
+Tree.prototype.depth = function(){
if (this.lo && this.hi) return 1 + max(this.lo.depth(), this.hi.depth())
else if (this.lo) return 1 + this.lo.depth()
else if (this.hi) return 1 + this.hi.depth()