구현한 코드
let array = [3,0,1,8,7,2,5,4,6,9];
let box;
for(let i = 0; i < array.length; i++){
for(let x = 0; x < array.length - i; x++){
if(array[x] > array[x + 1]){ // 만약 왼쪽에 있는 값이 오른쪽에 있는 값보다 더 크다면. [3,0]
box = array[x];
array[x] = array[x + 1]; // 왼쪽(큰값)에 있는 값은 오른쪽(작은값)의 값이 된다. [__,3]
array[x+1] = box; // 오른쪽(작은값)은 왼쪽(큰값)이 된다. [0,3]
console.log(array)
}
}
}
for문 설명
for(let i = 0; i < array.length; i++){
for(let x = 0; x < array.length - i; x++){
// array.length - i 의 의미 :
for (let i = 0 :
for(let x = 0; array.length - 0 ) { // array길이 10 전체 탐색
[3,0,1,8,7,2,5,4,6,9]
}
for (let i = 1 :
for(let x = 0; array.length - 1 ) { // array길이 9까지만 탐색
[3,0,1,8,7,2,5,4,6 /,9]
}
for (let i = 2 :
for(let x = 0; array.length - 2 ) { // array길이 8까지만 탐색
[3,0,1,8,7,2,5,4 /6,9]
}
for (let i = 3 :
for(let x = 0; array.length - 3 ) { // array길이 7까지만 탐색
[3,0,1,8,7,2,5 /4,6,9]
}
for (let i = 4 :
for(let x = 0; array.length - 4 ) { // array길이 6까지만 탐색
[3,0,1,8,7,2 /5,4,6,9]
}
}
if문 설명
if(array[x] > array[x + 1]){ // 만약 왼쪽에 있는 값이 오른쪽에 있는 값보다 더 크다면. [3,0]
box = array[x];
array[x] = array[x + 1]; // 왼쪽(큰값)에 있는 값은 오른쪽(작은값)의 값이 된다. [__,3]
array[x+1] = box; // 오른쪽(작은값)은 왼쪽(큰값)이 된다. [0,3]
console.log(array);
}