① 배열의 index 0
을 선택한다.
② 해당 값이 다음 index
값보다 크다면 서로 자리를 바꿔준다.
③ 이걸 다음 index
값이 더 클 때까지 반복한다.
④ 한 숫자에 대하여 반복이 끝났다면 다시 ①번으로 돌아간다.
[6, 5, 3, 2, 8]
-> [ 5, 6, 3, 2, 8 ]
-> [ 5, 3, 6, 2, 8 ]
-> [ 5, 3, 2, 6, 8 ]
-> [ 3, 5, 2, 6, 8 ]
-> [ 3, 2, 5, 6, 8 ]
-> [ 2, 3, 5, 6, 8 ]
const bubbleSort = nums => {
while(nums[0] !== Math.min(...nums)) {
for(let i = 0; i < nums.length - 1; i++) {
if(nums[i] > nums[i+1]) {
let stor = nums[i];
nums[i] = nums[i+1];
nums[i+1] = stor;
}
}
}
return nums;
}