美文网首页leetcode --- js版本
leetcode-tree-94-Binary Tree Ino

leetcode-tree-94-Binary Tree Ino

作者: 石头说钱 | 来源:发表于2019-06-19 22:56 被阅读0次

94. Binary Tree Inorder Traversal

Binary Tree Inorder Traversal
中序遍历二叉树

注意二叉树并不是左节点小于父节点,右节点大于父节点,二叉搜索树才符合(BST)

  • Example:

Input: [1,null,2,3]
   1
    \
     2
    /
   3

Output: [1,3,2]

  • 解法一,递归
// recursive,中序遍历
function inorderTraversal(root,arr = []){
    if(root){
        inorderTraversal(root.left)
        arr.push(root.val)
        inorderTraversal(root.right)

    }
    return arr

}
  • 解法二,迭代
function inorderTraversal(root){
    const arr = []
    const stack = []
    let node = root;

    while(node || stack.lenght){
        while(node){
            stack.push(node.left)
            node = node.left
        }

        node = stack.pop() //出栈
        arr.push(node)
        node = node.right
    }
    return arr
}

相关文章

网友评论

    本文标题:leetcode-tree-94-Binary Tree Ino

    本文链接:https://www.haomeiwen.com/subject/gmxrqctx.html