LeetCode94. 二叉树的中序遍历

📅 2026/7/29 9:39:00 👁️ 阅读次数 📝 编程学习
LeetCode94. 二叉树的中序遍历

1.递归法

public class Solution { List<int> result = new List<int>(); public IList<int> InorderTraversal(TreeNode root) { if (root == null) return result; InorderTraversal(root.left); result.Add(root.val); InorderTraversal(root.right); return result; } }

2.迭代法

public class Solution { Stack<TreeNode> stack = new Stack<TreeNode>(); List<int> result = new List<int>(); public IList<int> InorderTraversal(TreeNode root) { TreeNode current = root; while (current != null || stack.Count > 0) { while (current != null) { stack.Push(current); current = current.left; } current = stack.Pop(); result.Add(current.val); current = current.right; } return result; } }