소개
이 랩에서는 JavaScript 를 사용하여 배열에서 무작위 요소를 선택하는 방법을 살펴봅니다. Fisher-Yates 알고리즘을 사용하여 배열을 섞는 방법과 이를 사용하여 배열에서 하나 이상의 요소를 무작위로 선택하는 방법을 배웁니다. 이 랩은 배열 조작에 대한 이해를 높이고 JavaScript 에서 문제 해결 능력을 향상시키도록 설계되었습니다.
이 랩에서는 JavaScript 를 사용하여 배열에서 무작위 요소를 선택하는 방법을 살펴봅니다. Fisher-Yates 알고리즘을 사용하여 배열을 섞는 방법과 이를 사용하여 배열에서 하나 이상의 요소를 무작위로 선택하는 방법을 배웁니다. 이 랩은 배열 조작에 대한 이해를 높이고 JavaScript 에서 문제 해결 능력을 향상시키도록 설계되었습니다.
코딩 연습을 위해 터미널/SSH 를 열고 node를 입력하세요. 다음 코드는 Fisher-Yates 알고리즘을 사용하여 배열을 섞고, 배열 크기까지 배열에서 고유한 키를 가진 n개의 무작위, 고유한 요소를 검색합니다.
const sampleSize = ([...arr], n = 1) => {
let m = arr.length;
while (m) {
const i = Math.floor(Math.random() * m--);
[arr[m], arr[i]] = [arr[i], arr[m]];
}
return arr.slice(0, n);
};
이 코드를 사용하려면 배열과 검색할 요소의 선택적 숫자 n으로 sampleSize()를 호출합니다. n이 제공되지 않으면 함수는 배열에서 무작위로 하나의 요소만 반환합니다.
sampleSize([1, 2, 3], 2); // [3, 1]
sampleSize([1, 2, 3], 4); // [2, 3, 1]
축하합니다! 배열에서 N 개의 무작위 요소 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.