Given a complete binary tree, count the number of nodes. Note: Definition of a complete binary tree from Wikipedia: In a complete binary tree every level, except possibly the last, is completely filled, and all nodes in the last level are as far left as possible. It can have between 1 and 2h nodes inclusive at the last level h. Example: Input: 1 / \ 2 3 / \ / 4 5 6 Output: 6Continue reading “[Leetcode]222. Count Complete Tree Nodes”
[Leetcode]1008. Construct Binary Search Tree from Preorder Traversal
Question: Given a preorder traversal, reconstruct the binary search tree and return the root. Input:Continue reading “[Leetcode]1008. Construct Binary Search Tree from Preorder Traversal”[8,5,1,7,10,12]
Output:[8,5,10,1,7,null,12]
Visiualization of the output:
[Leetcode for Interviews] BinaryTree Traversal – DFS & BFS
After introducing traversing trees using BFS and DFS in Tree Traversal – Recursively & Iteratively – Preorder, Inorder, Postorder, it’s time to get some practices! Here are Leetcode questions that appear frequently during tech interviews.
Continue reading “[Leetcode for Interviews] BinaryTree Traversal – DFS & BFS”Tree Traversal – Recursively & Iteratively
Tree traversal refers to the process of visiting each node in a tree data structure (Wikipedia). The two general strategies are Depth-First-Search (DFS) and Breadth-First-Search (BFS). For BFS, it iterates through the tree level by level with Queue, from top to bottom. When using DFS, there are three different ways: Preorder, Inorder, and Postorder.
Continue reading “Tree Traversal – Recursively & Iteratively”