Binary Tree Preorder Traversal
https://leetcode.com/problems/binary-tree-preorder-traversal/description/
Given a binary tree, return the preorder traversal of its nodes' values.
Thoughts
一个栈用来做backtracking。先是当前点加入到res, 然后是左节点, 再然后是右节点, 因此处理完当前节点后, 先把右节点压入, 再把左节点压入, 下次循环体就会先把左节点抛出并把左节点的子树压入, 直到左子树全部结束, 这时右子树开始依次往外蹦.
Code
Analysis
时间复杂度是O(n), 空间O(h).
Last updated
Was this helpful?