이 글은 js의 문자열 전체 배열에 대한 알고리즘 분석을 소개합니다. 필요한 친구들이 참고할 수 있습니다.
문자열을 입력하고 해당 문자열에 포함된 모든 문자 순열을 사전순으로 출력합니다. 예를 들어 문자열 abc가 입력되면 문자 a, b, c로 정렬할 수 있는 모든 문자열 abc, acb, bac, bca, cab, cba가 인쇄됩니다.
분석할 내용이 없습니다. 이 질문을 온라인으로 확인하는 아이디어는 아마도
#🎜입니다. 🎜#abc는 abc, bac, cba로 나누어집니다(이것은 0과 0의 교환, 0과 1의 교환, 0과 2의 교환
첫 번째 단계에서 얻은 abc는 abc, acb로 나누어집니다(1과 1, 1과 2의 교환입니다
첫 번째 단계에서 얻은 bac가 bac와 bca로 나누어집니다(이것은 1과 1의 교환, 1과 2 교환
첫 번째 단계에서 얻은 CBA가 차별화됩니다. cba, cab에 대한 코드 구현(이것은 1과 1 교환, 1과 2 교환입니다
#🎜🎜 #
function Permutation(str) { if(str === null || str === "") return []; var res = []; var index = 0; step(str.split(""), index, res); return res.sort(); } function step(strArr, cur, res) { if(cur === strArr.length-1){ var i = 0, str = ""; while(i < strArr.length){ str += strArr[i++]; } res.push(str); } for(var i = cur;i < strArr.length;i++) { if(strArr[i] === strArr[cur] && i !== cur) continue; swap(strArr, i, cur); step(strArr, cur+1, res); swap(strArr, i, cur); } } function swap(arr, a, b) { var temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; }
JavaScript에서 Object.defineProperty() 메서드 구문 분석
#🎜🎜 #React 사용: React 구성 요소 내부의 상태 관리
위 내용은 js의 문자열 전체 배열에 대한 알고리즘 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!