재귀를 최소화 하는 방법이 있을까요?
313
投稿した質問数 2
바둑이들을 오름차순으로 정렬하고 dfs를 돌리면 한 번만에 바로 구해지더라구요.
근데 재귀의 원리를 배우기 위함이라서 정렬을 하지 않는건가요?
回答 3
0
미리 정렬한다는 말은 dfs를 돌리기전에 바둑이를 [81,61,58,42,33] 으로 정렬하고 하나씩 더해간다는 말입니다.
그럼 큰수부터 더해나가니깐 max에 더 빨리 도달하므로 정렬되지 않았을때보다 dfs를 덜 호출하므로 정렬하는게 낫지않을까 라는 질문이었습니다:)
0
안녕하세요^^
미리 정렬하고 DFS를 돌리면 한 번만에 나온다는게 뭔지 모르겠네요. 어자피 DFS를 돌려야 하는데....
재귀를 시간복잡도 단축하는 방법은 컷에지 방식을 주로 씁니다. 답이 나오지 않을 가지를 미리 예측해서 뻗어나가지 않는 방식입니다. 영상에서는 설명하지 않았지만 제가 제공한 소스코드에 보시면 아래와 같은 코드가 추가되어 있습니다. 이 코드를 하면 컷에지가 되어 많이 단축됩니다.
if(sum+(total-tsum)<answer) return;
continue를 사용하는 이유
0
79
2
정렬 가능 여부 판단하기
0
64
2
알고리즘 학습법 관련해서 질문드립니다.
0
85
1
코드 리뷰 부탁드립니다!
0
90
1
indexOf를 사용해서 풀어보았습니다 !!
0
68
1
저는 이런식으로 구현 해보았습니다 !!
0
64
1
12,13,14 강의 소리만 나오고 검은 화면입니다
0
99
3
반복문 최소화하고 indexOf 사용해서 풀어봤습니다
0
63
1
영상 보기 전에 직접 풀어봤습니다.
0
74
1
섹션1의 17번문제 이 풀이로 풀어도 될까요?
0
133
2
정규표현식으로 처리해도 상관없나요 ?
0
120
2
3칸씩 건너뛸 수 있을 경우
0
125
2
강의에 대해 질문있습니다.
0
135
2
Object와 Set을 이용해 풀어봤습니다.
0
117
2
이렇게 해도 되나요?
0
102
2
선생님 중복 단어나 중복관련 문제들은 set을 이용하면 좋을것 같습니다.
0
145
2
이렇게 풀어도 괜찮을까요?
0
138
1
이렇게 풀어도 괜찮을까요?
0
112
1
모든 아나그램 찾기에서 시간복잡도
0
98
1
코드리뷰 부탁드립니다.
0
130
1
for loop 탈출은 return 문으로 해도 되지 않나요?
0
133
1
투포인트알고리즘으로 풀어봤습니다.
0
142
0
코드 리뷰 부탁드립니다.
0
119
1
코드 맞게 작성한 거 아닌가여??
0
146
1

