C++ 순열 (Permutation)
순열 알고리즘에서 "순열"은 주어진 원소들을 모든 가능한 순서대로 배열하는 경우의 수를 의미합니다. 다시 말해, 주어진 원소들의 순서를 변경하여 만들 수 있는 모든 경우의 배열을 나타내는 것입니다. 예를 들어, 3개의 원소 A, B, C에 대한 순열은 ABC, ACB, BAC, BCA, CAB, CBA와 같이 가능한 모든 순서의 배열을 나타냅니다. 순열은 조합과 함께 주어진 원소들의 가능한 조합을 나타내는 개념입니다. 순열은 다양한 문제와 알고리즘에서 사용되며, 주로 다음과 같은 분야에서 활용됩니다: 조합 최적화 문제: 문제의 조건에 따라 원소들의 순서가 중요한 경우에 순열을 활용하여 최적화 문제를 해결할 수 있습니다. 문자열 조합: 문자열 내의 문자들의 모든 가능한 배열을 생성하거나 검사하는 작업에 활..