[JavaScript] 다음 순열 (Next Permutation)
코딩테스트 문제를 풀고 알고리즘 정리합니다. 다음순열이란? 컴퓨터 과학에서, '다음 순열'이란 주어진 순열에서 사전순으로 다음에 오는 순열을 의미합니다. 예를 들어 [1,2,3]의 다음 순열은 [1,3,2]입니다. [1,2,3]의 다음 순열을 끝까지 진행하면 아래 값처럼 진행 됩니다. [1,2,3] [1,3,2] [2,1,3] [2,3,1] [3,1,2] [3,2,1] Javascript에서 다음 순열을 구하는 과정은 다음과 같습니다: 배열의 끝에서부터 시작하여, 현재 원소가 이전 원소보다 큰 위치(i)를 찾습니다. 이 위치는 '다음 순열'에서 숫자가 바뀌어야 하는 첫 번째 위치입니다. 다시 배열의 끝에서부터 시작하여, 위치 i의 원소보다 큰 첫 번째 원소의 위치(j)를 찾습니다. 위치 i와 j의 원소를..
2024. 3. 8.