Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 현금흐름표
- 인플레이션
- etf
- 객체지향
- 제태크
- S&P500
- 다형성
- 접근제어자
- Java
- 오버라이딩
- 금리인하
- javascript
- 배당성장
- 그리디 알고리즘
- 알고리즘
- 백준
- 금리인상
- 주식
- 주린이
- 기업분석
- 잉여현금흐름
- FCF
- 프로그래머스
- object
- 자바
- mco
- XLF
- StringBuffer
- 미국주식
- 무디스
Archives
- Today
- Total
오늘의하루
[javascript] 조합, 순열 및 객체 정렬 본문
재귀 함수를 이용한 조합
//조합-combination
let getCombi = (arr,selectnum)=>{
const rest = [];
if (selectnum === 1){
return arr.map((v)=>[v]);
}
arr.forEach((fixed, index, origin)=>{
const rest = origin.slice(index + 1);
const combi = getCombi(rest, selectnum - 1);
const fixed_combi = combi.map((v)=>[fixed, ...v]);
result.push(...fixed_combi);
});
return result;
}
조합은 중복을 하지 않으며 모든 경우의 수를 조합할 수 있다.
예를 들어 1,2,3과 1,3,2는 같은 것으로 취급한다.
재귀 함수를 이용한 순열
// 순열-Permutation
let getPermutation = (arr,selectnum)=>{
const result = [];
if (selectnum === 1){
arr.map((v)=>[v]);
}
arr.forEach((fixed, index, origin)=>{
const rest = [...origin.slice(0, index), ...origin.slice(index + 1)];
const permutation = getPermutation(rest, selectnum - 1);
const fixed_permutation = permutation.map((v)=>[fixed, ...v]);
result.push(...fixed_permutation);
});
return result;
}
순열은 중복을 허용하며 모든 경의 수를 조합할 수 있다.
예를 들어 1,2,3과 1,3,2를 다른것으로 취급한다.
객체를 value 기준으로 정렬하는 방법
let people = {
"워렌버핏" : 100,
"피터린치" : 75,
"고길동" : 150,
"둘리" : 20,
}
// value를 기준으로 정렬해보기
//Object.entries(people)을 하면 객체가 배열로 바뀐다.
//내림차순
let s = Object.entries(people).sort((a,b)=>a[1] - b[1]);
//오름차순
let u = Object.entries(people).sort((b,a)=>b[1] - a[1]);
'javascript & nodejs' 카테고리의 다른 글
[Javascript] LinkedList 연결 리스트 구현하기 (0) | 2022.07.04 |
---|---|
[javascript] Call Stack과 Event Loop 알아보기 (0) | 2022.05.22 |
[node js] Module 생성 및 사용 방법 (0) | 2022.05.22 |
Comments