소개
이 랩에서는 버블 정렬 알고리즘을 사용하여 배열을 정렬하는 데 중점을 둔 JavaScript 프로그래밍 연습을 진행합니다. 이 랩의 목적은 버블 정렬 알고리즘의 작동 방식을 이해하고, JavaScript 프로그래밍 기술을 연습할 수 있는 기회를 제공하는 것입니다. 이 랩을 마치면 JavaScript 에서 버블 정렬 알고리즘을 구현하는 방법과 이를 사용하여 숫자 배열을 정렬하는 방법에 대한 더 나은 이해를 얻게 될 것입니다.
버블 정렬 알고리즘
코딩 연습을 위해 터미널/SSH 를 열고 node를 입력하여 시작합니다. 버블 정렬 알고리즘은 숫자 배열을 정렬합니다.
버블 정렬 알고리즘을 사용하여 배열을 정렬하는 단계:
현재 반복에서 값이 교환되었는지 여부를 나타내는 변수
swapped를 선언합니다.스프레드 연산자 (
...) 를 사용하여 원래 배열arr을 복제합니다.for루프를 사용하여 복제된 배열의 요소를 반복하고, 마지막 요소 전에 종료합니다.중첩된
for루프를 사용하여0과i사이의 배열 세그먼트를 반복하고, 순서가 잘못된 인접 요소를 교환하고swapped를true로 설정합니다.반복 후
swapped가false이면 더 이상 변경이 필요 없으므로 복제된 배열이 반환됩니다.
예제 코드:
const bubbleSort = (arr) => {
let swapped = false;
const a = [...arr];
for (let i = 1; i < a.length; i++) {
swapped = false;
for (let j = 0; j < a.length - i; j++) {
if (a[j + 1] < a[j]) {
[a[j], a[j + 1]] = [a[j + 1], a[j]];
swapped = true;
}
}
if (!swapped) return a;
}
return a;
};
bubbleSort([2, 1, 4, 3]); // [1, 2, 3, 4]
요약
축하합니다! 버블 정렬 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.