Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 바질토마토뭐시기
- 버즈2프로
- 서울제빵소
- 토이프로젝트
- 눈알빠지겠네
- 취미
- 잠실새내
- 발더스모드
- 노노그램
- 맛집
- 발더스3
- 나쫌
- 천등
- 밥먹고
- LeetCode
- 게임
- 3d퍼즐
- DIY
- 하스스톤
- 코테
- 코딩테스트
- 누룽지소금빵
- 송리단
- javascript
- 뜨아거
- 메일우유
- 미앤아이
- 알고리즘테스트
- 발더스게이트
- 메탈퍼즐
Archives
- Today
- Total
.Zzumbong
[leetCode/JS] 222. Count Complete Tree Nodes 본문
문제 설명
Given the root
of a complete binary tree, return the number of the nodes in the tree.
According to Wikipedia, every level, except possibly the last, is completely filled in a complete binary tree, 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
.
Design an algorithm that runs in less than O(n)
time complexity.
입출력 예
Example 1:
Input: root = [1,2,3,4,5,6]
Output: 6
Example 2:
Input: root = []
Output: 0
Example 3:
Input: root = [1]
Output: 1
Constraints
- The number of nodes in the tree is in the range
[0, 5 * 104]
. 0 <= Node.val <= 5 * 104
- The tree is guaranteed to be complete.
내 솔루션
- 어제 DFS, BFS 같은 알고리즘 공부를 해두어서 쉬운 문제였다.
var countNodes = function(root) {
let count = 0;
const search = (root) => {
if(!root) return
count++;
search(root.left)
search(root.right)
}
search(root)
return count
};
감상평
- 복잡하게 count 값을 리턴하는 형태로 할 수 있지만 그럼 귀찮기 때문에 전역으로 처리..
'coding test > leetCode' 카테고리의 다른 글
[leetCode/JS] 1700. Number of Students Unable to Eat Lunch (0) | 2022.11.23 |
---|---|
[leetCode/JS] 3. Longest Substring Without Repeating Characters (0) | 2022.11.23 |
[leetCode/JS] 2. Add Two Numbers (0) | 2022.11.23 |
[leetCode/JS] 1. Two Sum (0) | 2022.11.22 |
[leetCode/JS] 151. Reverse Words in a String (0) | 2022.11.22 |
Comments