- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
안녕하십니까 선생님,
이 문제 보자마자 bfs보단 dfs가 먼저 생각이 났고 머릿속에서도 dfs로 시뮬레이션 해보니까 과정이 잘 그려져서 dfs로 진행을 했습니다.
링크 : http://boj.kr/020903cff23948a9be3332ad6a3787fb
그러고 강의를 보니, 큐를 두 개나 만들어서 bfs로 푸시는 과정이 제가 작성한 코드보다 메모리도 훨씬 적게 사용하고 시간도 빠른 걸 보고 어떻게 바로 저런 생각이 들어서 문제를 풀 수 있는지 신기하면서도 제가 과연 시험장에서 비단 이 문제뿐만이 아니라 어떤 문제에 대해서 최대한 메모리를 적게 사용하며 시간도 적게 걸리는 풀이로 풀 수 있을지 고민이 많이 됩니다. 조언 부탁드립니다..
안녕하세요 ㅎㅎ
제가 과연 시험장에서 비단 이 문제뿐만이 아니라 어떤 문제에 대해서 최대한 메모리를 적게 사용하며 시간도 적게 걸리는 풀이로 풀 수 있을지 고민이 많이 됩니다. 조언 부탁드립니다..
-> 저도 처음에 이 문제를 보고 Queue 2개를 이용한 BFS풀이를 몰랐을 때는 DFS가 당연히 먼저 생각이 들었습니다. 그 이후에 해당 개념을 알고 이와 유사한 문제의 경우 이렇게 풀면되겠다 라고 접근했던 것 같습니다.
아직 3주차이시면 알고리즘에 대한 개념이 부족한 상태입니다. 5주차정도까지만 가시면 어느정도는 이 문제에 이 개념을 적용하겠다라는게 느껴지실겁니다.
또한, 어떤 문제에 대해 효율적으로 접근하고자하는 것은 좋지 않습니다. 일단은 무식하게 접근하는게 좋습니다. 무식하게 -> 시간복잡도 판단 -> 불가능하다면 -> 효율적인 방법은? 이렇게 생각해야 합니다.
이문제를 보기 전에 Queue 2개를 이용한 BFS풀이를 몰랐을 때 먼저 DFS를 생각하신 것은 아주 잘한 접근법이니 괜찮습니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
답글
jjs270402
2024.12.20감사합니다 선생님. 조언 주신 덕분에 용기도 나고
앞으로 문제에 대한 접근 방향을 확실하게 잡을 수 있을 것 같습니다.