Algorithm/Algorithm Practice
LeetCode - path-sum (javascript)
GrapeMilk
2021. 7. 8. 07:58
리트코드 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)