199. Binary Tree Right Side View
Tags:
Medium
Skills:
Tree
June 24, 2025
04:32 AM
No headings found
Loading content...
Related Posts
Leetcode
No headings found
Related Posts
Leetcode
Problem
Bài toán yêu cầu bạn cần trả về danh sách các node nhìn thấy được khi nhìn binary tree từ phía bên phải, tức là node ngoài cùng bên phải của mỗi tầng
Approach
Time and space complexity
Solution
1/**
2 * Definition for a binary tree node.
3 * class TreeNode {
4 * val: number
5 * left: TreeNode | null
6 * right: TreeNode | null
7 * constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) {
8 * this.val = (val===undefined ? 0 : val)
9 * this.left = (left===undefined ? null : left)
10 * this.right = (right===undefined ? null : right)
11 * }
12 * }
13 */
14
15function rightSideView(root: TreeNode | null): number[] {
16 const res: number[] = []
17 if (!root) return res;
18 const queue: TreeNode[] = [root];
19 while (queue.length) {
20 const level_size = queue.length
21 for (let i = 0; i < level_size; i++) {
22 const node = queue.shift();
23 if (i === level_size - 1) res.push(node.val)
24 if (node.left) queue.push(node.left);
25 if (node.right) queue.push(node.right)
26 }
27 }
28 return res
29};