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 |
Tags
- 백트래킹
- C++
- React
- 알고리즘
- BFS
- 제로베이스
- Algorithm
- 코딩테스트 스터디
- leetcode
- 완전탐색
- 구조체
- JavaScript
- 백준
- socket
- 프로그래머스
- dfs
- Server
- 프론트엔드 스쿨
- 코딩테스트
- 문자열&연산자
- 멀티스레드
- 메모리 배리어
- 자바스크립트
- 제로베이스 프론트엔드 스쿨
- map
- MemoryBarrier
- 구현
- N과 M(2)
- c#
- 서버
Archives
- Today
- Total
Written
leetcode / Unique Binary Search Tree II / JavaScript 본문
https://leetcode.com/problems/binary-tree-inorder-traversal/submissions/905212431/
Given the root of a binary tree, return the inorder traversal of its nodes' values.
=> 이진트리의 루트노드가 주어졌을때 , 노드의 value값들을 중위순회하여 반환하는 문제입니다.
Example 1:
Input: root = [1,null,2,3]
Output: [1,3,2]
재귀함수의 동작 방식에 대해서 잘 이해하고 있다면, 복잡하지 않게 풀어낼 수 있는 문제입니다.
중위순회의 정의대로 왼쪽 자식노드 -> 부모노드 -> 오른쪽자식노드순으로 val값을 찍어낼 수 있게끔
재귀함수를 이용하여 코드를 구현하면 됩니다.
*** 재귀함수를 호출하면 함수를 실행하고 호출한 위치로 다시 돌아와 그 다음 코드부터 다시 실행 되는 것만
이해한다면 정말 쉬운 코드입니다 ***
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
|
/**
* Definition for a binary tree node.
* function TreeNode(val, left, right) {
* this.val = (val===undefined ? 0 : val)
* this.left = (left===undefined ? null : left)
* this.right = (right===undefined ? null : right)
* }
*/
/**
* @param {TreeNode} root
* @return {number[]}
*/
var inorderTraversal = function(root) {
const ans = [];
function inorder(root) {
if (root === null){
return;
}
inorder(root.left);
ans.push(root.val);
inorder(root.right);
}
inorder(root);
return ans;
};
|
cs |
'알고리즘 문제풀이' 카테고리의 다른 글
백준 / 2231 / 분해합 / C++ (0) | 2023.05.04 |
---|---|
69. Sqrt(x) / 70. Climbing Stairs / 8. String to Integer (atoi) / 코딩테스트 스터디 문제풀이 모음 (Leetcode) (0) | 2023.02.28 |
leetcode / 7. Reverse Integer / JavaScript (0) | 2023.02.21 |
leetcode / 67. Add Binary / JavaScript (0) | 2023.02.21 |
leetcode / 66. Plus One / JavaScript (0) | 2023.02.21 |
Comments