const { tree } = require("./utils/BinarySearchTree");
//中序遍历
//因为 console.log 会换行,不能将所有内容收集成一行。所以使用 str 来收集要打印的内容。
function InOrderDisplay(root, str = "") {
if (root == undefined || root == null) {
return "";
}
//访问当前节点的内容。
str += `${root.value}, `;
//判断是否存在左子树,存在则递归左子树。
if (root.leftNode) {
let leftStr = InOrderDisplay(root.leftNode);
if (leftStr) {
str += leftStr;
}
}
//判断是否存在右子树,存在则递归右子树。
if (root.rightNode) {
let rightStr = InOrderDisplay(root.rightNode);
if (rightStr) {
str += rightStr;
}
}
return str;
}
let content = InOrderDisplay(tree);
console.log(content.replace(/^, /, ""));
08-02
695
12-13
7018
09-19
1269