recursive (2) 썸네일형 리스트형 재귀 호출 ( Recursive Call) 함수가 자기 자신을 호출하는 행위를 재귀 호출이라고 합니다. 때문에 탈출 조건이 주어지지 않으면 무한루프에 빠질 수 있습니다. 재귀 호출은 코드를 간결하게 만들 수 있고, 특정 문제를 해결하는 데 효과적일 수 있습니다. 재귀 호출을 사용할 수 있다면 반복문으로도 표현이 가능합니다. 아래와 같은 형식으로 구현합니다. func recursiveCall() { guard ... else { return } // 탈출 조건 recursiveCall()// 수행 동작 } 아래는 1부터 number 까지의 숫자를 더하는 재귀 함수입니다. 재귀 호출의 동작 방식은 아래와 같이 표현할 수 있습니다. 자세히 봐야 하니 느린 속도로 제작했습니다. 재귀함수는 메모리 상에서 스택처럼 관리가 됩니다. print 는 바로 나오지.. [프로그래머스] 타겟 넘버 난이도 : Lv 2 분류 : 깊이/너비 우선 탐색(DFS/ BFS) 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 import Foundation func solution(_ numbers:[Int], _ target:Int) -> Int { var count = 0 func DFS(_ index: Int, _ sum: Int) { if index == (numbers.count - 1) && sum == target { // 재귀함수 탈출 조건 count += 1 return } guard index + 1 < numbers.count els.. 이전 1 다음