泡の開始泡の位置合わせ

1649 ワード


実装コード
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(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);
}