dfs()에서 result.add() 부분 질문이요!
188
작성한 질문수 6
if (list.size() == nums.length) {
List<Integer> temp = new ArrayList<>(list);
result.add(temp);
//return;
}
저는 dfs() 메소드의 if 구문에서 result 리스트에 결과가 추가되면
위 코드 아래부분인 for문이 돌지 않게 해야겠다는 생각으로
위에 작성한 코드같이 return;을 줬었는데, 있으나 없으나 결과가 같더라구요.
없어야 하는게 맞는 건가요~?
답변 1
0
안녕하세요
이문제는 호출을 잘 보셔야합니다. 호출하면서 다시 안에서 호출하기때문에
스택에 쌓이는 것처럼 호출이 됩니다.
디버깅을 걸어서 흘러가는걸 다 체크해보세요.
질문주신 부분은:
아래처럼 int test 를 만들어서 return을 적용해도 27번 호출,
return을 주석처리해도 27번이 호출됩니다.
int count=0;
int test =0;
private void dfs(int[] nums, List<List<Integer>> lists, List<Integer> cur) {
if (cur.size() == nums.length) {
List<Integer> list = new ArrayList<>(cur);
lists.add(list);
test++;
System.out.println("test : "+test);
// return ;
}
강의자료에 나오는 m과 n의 범위가 코딩하고 다른거 같습니다
0
261
0
나선형매트릭스 깃허브에 코드가 없는것같아요
0
217
0
로그 파일의 데이터 재정렬 코드가 깃허브에 없어요!
0
230
0
새로 생긴 기초강의 질문드려요
1
386
1
질문드립니다
1
236
1
Unique Paths Integer 질문입니다
0
225
1
subString 방법으로 문제 풀이 영상은 짤린건가요?
1
261
1
DFS 방식으로 푼 것이 맞나요?
0
316
2
질문드립니다~
0
200
1
left if문에 대해서
1
260
1
오타 인가요?
1
241
1
안녕하세요 강사님
1
194
1
질문 드립니다
0
175
2
Queue&Stack 문제해설집 문의
0
185
1
문제분석 로직 질문
1
232
1
시간 복잡도 문의드립니다.
1
235
1
시간복잡도 질문드립니다.
1
207
1
for-each 문 질문있습니다!
0
302
1
강의영상에서 사용된 로그 메소드가 궁금합니다.
2
291
2
강의자료 + 문제 이해 관련 질문입니다
1
290
3
강사님 오류맞나요?
1
209
1
강사님 시간 복잡도에 대해서 질문드립니다.
1
177
1
질문입니다.
1
205
1
문제에 대한 이해
1
314
1





