재귀함수 썸네일형 리스트형 [큰돌 C++ 알고리즘 코딩테스트 | 강의 0주차]순열의 개념과 next_permutation 순서와 상관 있게 뽑는다면 순열이다. 순서와 상관 없게 뽑는다면 조합이다. 순열은 순서가 정해진 임의의 집합을 다른 순서로 섞는 연산을 말한다. 문제에서 순서를 재배치하여…, ~한 순서의 경우 max값을 이라면 순열문제이다. next_permutation() 사용시 주의할 점 next_permutation()과 prev_permutation() 두가지 함수중 보통은 next_permutation()을 쓰는데 그 때 배열을 오름차순으로 정렬해서 사용해야 한다. next_permutation()은 새로운 순열이 이전 순열보다 사전순으로 큰 경우 true를 반환하고 마지막 순열에 도달하고 범위가 첫 번째 순열로 재설정된 경우 false를 반환하는 함수이다. 이를 do - while문으로 모든 순열에 해당하는 .. 더보기 [큰돌 C++ 알고리즘 코딩테스트 | 강의 0주차] 재귀함수(recursion) 재귀함수 재귀함수(Recursion)는 정의 단계에서 자신을 재참조하는 함수 전달되는 상태인 매개변수가 달라질 뿐 똑같은 일을 하는 함수 큰 문제를 작은 부분문제로 나눠서 풀 때 사용합니다. 재귀함수 사용시 주의사항 반드시 기저사례를 써야 한다. (종료조건) if(n == 1 || n == 0) return 1; 사이클이 있다면 쓰면 안된다. ex) f(a)가 f(b)를 호출한 뒤 f(b)가 다시 f(a)를 호출하는 것 반복문으로 될 거같으면 반복문으로. (함수호출에 대한 코스트가 든다.) 팩토리얼과 피보나치에서의 활용 더보기 이전 1 다음