【发布时间】:2018-01-31 12:17:07
【问题描述】:
我正在熟悉 javascript 环境。我尝试实现一个对树进行中序遍历的函数,但是我遇到了一个错误。下面是我的代码。
我创建了一个Node 类,它定义了节点对象的属性。
在我的Tree 类中,构造函数定义了根属性。当我以根为参数调用 Inorder 函数时,编译器在 -->Inorder(root.left) 行上抛出一个错误,显示 -- Inorder is not defined--。
我做错了什么?
class Tree {
constructor(root) {
this.root = root;
}
Inorder(root) {
if (root == null) {
return;
}
Inorder(root.left);
console.log(root.data);
Inorder(root.right);
}
}
class Node {
constructor(data) {
this.data = data;
this.left = null;
this.right = null;
}
}
const obj = new Node(5);
obj.left = new Node(10);
obj.right = new Node(15);
obj.left.left = new Node(16);
obj.right.right = new Node(17);
const tree = new Tree(obj);
console.log(tree.root.data);
tree.Inorder(tree.root);
【问题讨论】:
标签: javascript data-structures ecmascript-6