본문 바로가기

분류 전체보기163

[LeetCode] 145. Binary Tree Postorder Traversal class Solution { public List postorderTraversal(TreeNode root) { LinkedList ans = new LinkedList(); Stack stack = new Stack(); if (root == null) { return ans; } stack.push(root); while (!stack.isEmpty()) { TreeNode cur = stack.pop(); ans.addFirst(cur.val); if (cur.left != null) { stack.push(cur.left); } if (cur.right != null) { stack.push(cur.right); } } return ans; } } Postorder Traversal은 Left.. 2023. 12. 6.
[LeetCode] 144. Binary Tree Preorder Traversal public class Solution { public List preorderTraversal(TreeNode root) { List result = new ArrayList(); if (root == null) { return result; } Stack stack = new Stack(); stack.push(root); while (!stack.isEmpty()){ TreeNode node = stack.pop(); result.add(node.val); if (node.right != null){ stack.push(node.right); } if (node.left != null){ stack.push(node.left); } } return result; } } Preorder Travers.. 2023. 12. 5.
[LeetCode] 94. Binary Tree Inorder Traversal class Solution { public List inorderTraversal(TreeNode root) { List answer = new ArrayList(); Stack stack = new Stack(); if (root == null) { return answer; } TreeNode current = root; while(current != null || !stack.isEmpty()) { while (current != null) { stack.push(current); current = current.left; } current = stack.pop(); answer.add(current.val); current = current.right; } return answer; } } Ino.. 2023. 12. 5.
[LeetCode] 111. Minimum Depth of Binary Tree class Solution { public int minDepth(TreeNode root) { if (root == null) { return 0; } Queue queue = new LinkedList(); queue.offer(root); int level = 1; while (!queue.isEmpty()) { int size = queue.size(); for (int i = 0; i < size; i++) { TreeNode curNode = queue.poll(); if (curNode.left == null && curNode.right == null) { return level; } if (curNode.left != null) { queue.offer(curNode.left); } if.. 2023. 12. 5.
728x90