이 섹션에서는 C++에서 STL을 사용하여 모든 역순열을 생성하는 방법을 볼 것입니다. (1, 2, 3)과 같은 일부 숫자의 정방향 및 역방향 순열은 다음과 같습니다. -
순열
1, 2, 31, 3, 22, 1, 32, 3, 13, 1, 23, 2, 1
역 순열
3, 2, 13, 1, 22, 3, 12, 1, 31, 3, 21, 2, 3
결과를 얻기 위해 previous_permutation() 함수를 사용할 것입니다.
알고리즘
getPermutation(arr, n)
정렬 시작 arr 역순으로 정렬을 시작하고 이전 순열 계산이 완료되지 않을 때까지 배열 요소를 반복합니다.End
예시
#include#include namespace std;void disp(int arr[], int n){ for(int i =0; i 출력
가능한 순열 :44 33 22 1144 33 11 2244 11 3344 11 33 2244 11 22 3333 44 22 1133 44 11 2233 22 44 1133 22 11 4433 11 44 2233 11 22 4422 44 33 1122 44 11 3322 33 44 1122 33 11 4422 11 44 3322 11 33 4411 44 33 2211 44 22 3311 33 44 2211 33 22 4411 22 44 4 3311