재귀 함수의 작동 방식에 대해서는 알겠습니다.
다만 헷갈리고 직관적으로 언제 사용해야되는지 잘 모르겠습니다.
1. DFS 에서 재귀를 사용하는 것도 이해가 잘 안됩니다.
2. 다양한 알고리즘 풀이보면
DFS(x, y+1, cluster)
DFS(x+1, y, cluster)
DFS(x, y-1, cluster)
DFS(x-1, y, cluster)
이런식으로 함수를 사용하는 것도..
재귀 때문에 진짜 요새 알고리즘 풀어보고 있는데 막막하네요 ㅜㅜ
직관적으로 언제 사용해야될지 갈피를 못잡겠습니다.
고수님들 도와주시면 감사하겠습니다.
재귀쓸땐 머리속으로 트리를 그리는게 중요하지
이진트리 구조 말씀이십니까 형님 ?
재귀도 결국은 브루트포스임 모든 경우의 수를 확인할 때 반복문으로 해결하는데 그걸 재귀 함수로 한다고 생각하셈. DFS에서 재귀가 사용되는 이유도 마찬가지로 모든 경우를 확인하는데 있음
입력 변수로 무엇을 쓸지랑 return 조건만 잘 설정해주면 되는걸까요 ?
그것도 그렇고 위에 말한대로 트리 구조를 노트에 그려가면서 일단 알고리즘을 짜야지
알고리즘 문제들 풀어논 코드 보면 재귀 기가 막히게 쓰더라구요 .. 첨엔 깔끔하지 못한 코드를 정리해서 그렇게 다들 쓰는걸까요 .. 참 .. ㅠㅠ
알고리즘 중급 까지는 일정한 패턴이 있어서 많이 풀어보면 감잡히게 되어 있음