/*
* function TreeNode(x) {
* this.val = x;
* this.left = null;
* this.right = null;
* }
*/
let preOrderArr = [] // 先
let inOrderArr = [] // 中
let postOrderArr = [] // 后
// 先序
function preOrder (node) {
if (node !== null) {
preOrderArr.push(node.val)
preOrder(node.left)
preOrder(node.right)
}
}
// 中序
function inOrder (node) {
if (node !== null) {
inOrder(node.left)
inOrderArr.push(node.val)
inOrder(node.right)
}
}
// 后序
function postOrder (node) {
if (node !== null) {
postOrder(node.left)
postOrder(node.right)
postOrderArr.push(node.val)
}
}
/**
*
* @param root TreeNode类 the root of binary tree
* @return int整型二维数组
*/
function threeOrders( root ) {
preOrder(root)
inOrder(root)
postOrder(root)
return [preOrderArr, inOrderArr, postOrderArr]
}
module.exports = {
threeOrders : threeOrders
};