namespace _144._Binary_Tree_Preorder_Traversal; public class Solution { public IList PreorderTraversal(TreeNode root) { List res = new List(); Stack stack = new Stack(); if (root != null) stack.Push(root); while (stack.Count > 0) { TreeNode cur = stack.Pop(); if (cur.right != null) stack.Push(cur.right); if (cur.left != null) stack.Push(cur.left); res.Add(cur.val); } return res; } }