二叉树的中序遍历递归 1234567891011121314151617181920212223/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) * } *//** * @param {TreeNode} root * @return {number[]} */var inorderTraversal = function (root) { let result = []; function dfs(node) { if (!node) return; dfs(node.left); result.push(node.val); dfs(node.right); } dfs(root); return result;}; 迭代 12345678910111213141516171819202122232425262728/** * Definition for a binary tree node. * function TreeNode(val, left, right) { * this.val = (val===undefined ? 0 : val) * this.left = (left===undefined ? null : left) * this.right = (right===undefined ? null : right) * } *//** * @param {TreeNode} root * @return {number[]} */var inorderTraversal = function (root) { // 栈 const stack = [], result = []; let cur = root; while (cur || stack.length) { while (cur) { stack.push(cur); cur = cur.left; } cur = stack.pop(); result.push(cur.val); cur = cur.right; } return result;};