티스토리 뷰
리트코드 path-sum (easy) 풀이
문제링크
( https://leetcode.com/problems/path-sum/ )
문제 해결 힌트
- 재귀의 동작이 복잡해보이지만 결국 호출된 함수는 하나의 리턴값을 같는다는 것을 생각하자.
- 주어진 hasPathSum을 이용하여 DFS를 구현한다.
문제 풀이 코드
var hasPathSum = function (root, sum) {
if (!root) return false;
if (!root.left && !root.right) {
return sum === root.val;
} else {
return (
hasPathSum(root.left, sum - root.val) ||
hasPathSum(root.right, sum - root.val)
);
}
};
시간복잡도: O(n)
'Algorithm > Algorithm Practice' 카테고리의 다른 글
[프로그래머스] 위클리챌린지_5주차_모음사전 (0) | 2021.09.16 |
---|---|
[프로그래머스] 짝지어 제거하기 (Javascript) (0) | 2021.06.21 |
프로그래머스 -7 완주하지 못한 선수 (Java) (0) | 2020.03.27 |
BST (0) | 2020.03.08 |
프로그래머스 -6 정수 내림차순으로 배치하기(Java) (0) | 2020.02.29 |
댓글
최근에 올라온 글
최근에 달린 댓글
TAG
- 20200510
- 20200423
- 백준
- 20201204
- 20200319
- 20200624
- 20200512
- 20200804
- 20200406
- 20200503
- chapter7
- likelion
- 생활코딩리눅스
- 20200622
- 20200330
- 20200429
- 20200421
- chapter8
- 20200413
- 20200420
- 20200425
- 20200428
- 20200417
- 20200415
- 20200424
- 20200403
- 20200427
- 20200502
- 20200317
- 20200504
- Total
- Today
- Yesterday