TIL 2021.7.21
오늘배운내용 정리
중복 순열
function rockPaperScissors (round) {
// TODO: 여기에 코드를 작성합니다.
round = round || 3;
let RPS = ['rock','paper','scissors' ]
let result = []
function permutate(RPS,basket,round){
if(round === 0){
result.push(basket)
return
}
for(let i = 0; i < RPS.length; i++){
let currentPlay = RPS[i];
permutate(RPS,basket.concat(currentPlay),round-1)
}
}
permutate(RPS,[],round)
return result
};
재귀로 수열을 만드는 방법을 배웠다.
재귀로 for문으로 진입하면서
for(let i = 0; i < RPS.length; i++){
let currentPlay = RPS[i];
permutate(RPS,basket.concat(currentPlay),round-1)
}
이부분에서 i=0일때 for문을 round(사람수만큼 돌린다)
if(round === 0){
result.push(basket)
return
}
재귀탈출조건은 위와같다
이런식으로 재귀를 돌다보면 중복수열을 완성시킬수있다
Author And Source
이 문제에 관하여(TIL 2021.7.21), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@gj00770/TIL-2021.7.21저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)