Written on
·
219
0
중복순열 구하기 문제에서
1)
res[0]=1
DFS(1) -> res[1]=1 DFS(2) -> print res[0],res[1]
2) res[0]=2
DFS(1) -> res[1]=1 DFS(2) -> print res[0],res[1]
....
res[0] 과 res[1]이 계속 overwirte되서 (예전 값은 없어지고 새로운 값으로 덮어 씌여지는게 아니라,
res라는 크기 2의 배열을 (2 x 2 x 2) 8개 만드는건가요?
res배열을 새로 만드는게 아닌데 어떻게 8개의 서로 다른 배열 res를 갖고 있을 수 있는건지 궁금합니다.
res 가 [1,1] , [1,2] , [1,3] , [2,1] ... 이렇게 8개 값을 stack 1줄 당 가지고 있다가 return하는 건가요?0?
분명 res는 전역변수라서 1개만 있는 것 같은데요.;;
(헤갈립니다..;; ㅠㅜ)
Answer 2
1
1
안녕하세요^^
res 리스트는 한개 있습니다.
그리고 재귀함수의 매개변수인 L값이 커졌다 작아졌다 하면서 res[0]과 res[1]의 값을 덮어쓰기(overwrite) 합니다.
헛 이렇게까지 해주시다니ㅠ.ㅠ 감사드립니다
더 열심히 배우겠습니다:)