반응형
var permute_list = [];
function permute(_arr, _temp)
{
if (_temp.length === _arr.length)
{
permute_list.push(_temp.slice());
return;
}
_arr.forEach(num => {
if (!_temp.includes(num))
{
_temp.push(num);
permute(_arr, _temp);
_temp.pop();
}
});
}
permute([0, 1, 2], []);
console.log(permute_list);
/*
[
[ 0, 1, 2 ],
[ 0, 2, 1 ],
[ 1, 0, 2 ],
[ 1, 2, 0 ],
[ 2, 0, 1 ],
[ 2, 1, 0 ]
]
*/
반응형
'Algorithm' 카테고리의 다른 글
LRU Cache (Least Recently Used) / 프로그래머스 캐시 (0) | 2022.01.19 |
---|---|
콜라츠 추측 (0) | 2021.08.27 |
하샤드의 수 (Harshad Number) (0) | 2021.08.25 |
덧셈 뺄셈 동적 계산 (dynamic plus minus, Dynamic addition and subtraction) (0) | 2019.07.19 |
주민등록번호 체계 및 유효성 검사 (javascript) (2) | 2016.10.07 |
퀵 정렬(Quick Sort) (javascript) (0) | 2016.05.31 |
재귀 함수를 이용한 거듭제곱 (a의 n승) (javascript) (0) | 2016.05.18 |
에라토스테네스의 체를 이용한 소수 찾기 (0) | 2016.05.17 |