[LeetCode] 144. Binary Tree Preorder Traversal

Jaime Lin
Nov 6, 2020
LeetCode logo

Level: Medium

Question

Example 1:

Given the root of a binary tree, return the preorder traversal of its nodes' values.

Input: root = [1,null,2,3]
Output: [1,2,3]

Example 2:

Input: root = []
Output: []

Example 3:

Input: root = [1]
Output: [1]

Example 4:

Input: root = [1,2]
Output: [1,2]

Example 5:

Input: root = [1,null,2]
Output: [1,2]

Constraints:

  • The number of nodes in the tree is in the range [0, 100].
  • -100 <= Node.val <= 100

Solutions

Thought 1 — Recursive

It’s an easy solution. No explanation needed.

Thought 2 — Iterative

Using a stack to complete implementation. Be aware that put the right node in front of the left node because of Fist-In-Last-Out.

Happy programming!

--

--

Jaime Lin

From Taiwan, a beautiful island. Learning English and sharing code experience.