728x90
const powerSet = function (str) {
let arr = str.split('').sort(); //문자열을 배열로 만들어주고 오름차순 정렬
arr = arr.filter((element, index) => { //중복된 문자열들 없앰
return arr.indexOf(element) === index;
});
let subsets = []; //부분집합
const dfs = (index, sub) => {
if(index === arr.length) { //index가 길이만큼 되면
subsets.push(sub); //부분집합에 넣어줌
return;
}
dfs(index+1, sub); //지금문자열 끝까지
dfs(index+1, sub + arr[index]); //이 다음 수
};
dfs(0, ''); //처음
return subsets.sort();
};반응형
'BEB > algorithm' 카테고리의 다른 글
| Toy15 Prime Number (0) | 2022.11.15 |
|---|---|
| toy 12 treeBFS (0) | 2022.11.10 |
| toy10 binarySearch (0) | 2022.11.08 |
| Toy8 - largestProductOfThree (0) | 2022.11.04 |
| 백트래킹 (0) | 2022.11.03 |
댓글