DFS

·TIL
🔗 LeetCode - 1302. Deepest Leaves Sum😇 헤매지 않는 날이 없군!우선 첫번째로 문제를 잘못 이해해서 node 자체가 들어오는 지 몰라서... int array가 들어오면 그것을 node로 만들고 tree로 예쁘게 만들어 줬는데!! 이미 treenode 형태로 input이 들어와서 쓸모가 없어짐....코드 보기# Definition for a binary tree node. import queue from collections import deque class TreeNode: def __init__(self, val=0, left=None, right=None): self.val = val self.left = left ..
·TIL
🔗 프로그래머스 - 게임 맵 최단거리P.S | 해당 문제는 데크를 BFS로 이용해서 풀면 문제 답과 효율성 테스트를 통과할 수 있다!이 방법으로도 시도해 보면서 알게 된점은!효율성 테스트를 통과하려면 최대한 적은 경우의 수로 움직여 줘야 한다. 해당하지 않은 경로는 아예 가지 않도록 계속 조건을 줘야 함!그리고1) 간곳을 maps 에서 0으로 처리해 주면서 count를 따로 세는 방법과,2) maps에 count를 저장하면서 실행하는 두가지 방법을 해봤는데둘다 테스트 코드는 통과했지만 효율성은 2)만 통과했다....! 이번주에 아는 선생님과 객체에 관해서 이야기를 나눴다. 객체를 state를 저장하는 데 사용한다는 이야기를 했었는데 그것을 실제로 적용해 보고 싶었다. 그래서 이번 코드를 객체를 이용해서..
·TIL
🔗 프로그래머스 - 타켓 넘버재귀로 풀었다!!각 숫자 사이에 + 또는 - 연산자를 넣어줘야 하는데재귀로 돌면서 디시전 트리 도는 것 처럼 + , - 를 선택하고 마지막 숫자까지 갔을때 target과 같으면 count += 1를 해줘서 답을 얻었다.def solution(numbers, target): def choose(idx, num_sum): if idx == len(numbers): if num_sum == target: return 1 return 0 return choose(idx + 1, num_sum + numbers[idx]) + choose(idx + 1, num_sum - numbers[i..
yolang
'DFS' 태그의 글 목록