Front

[Javascript] Bubble sort(버블 정렬)

bkuk 2022. 9. 15. 17:25

Bubble sort(버블 정렬)

버블 정렬은 배열 안에 있는 값들이 마치 거품이 일어나듯이 연쇄적으로 자리를 찾아가는 모습이 거품과 비슷해서 붙여졌다고 한다.

 

<script>
function bubblesort(array) {
    let temp = "";
    for( loop = 1; loop <= array.length - 1; loop++) {               

        for( i = 0; i <= array.length-loop-1; i++) {  

            if(array[i] > array[i+1] ) {
                temp = array[i];
                array[i] = array[i+1];
                array[i+1] = temp;
            }
        }
    }
            return array;
}

	console.log(bubblesort([7,4,9,1]));
</script>

 

for문을 통해 전체적인 "loop""(array.length -1)"  보다 작아질떄까지 반복되며,

오름차순으로 정렬을 위해서  loop for문 안에 추가적인 for문을 통해 i가 "(array.length - loop - 1)" 보다 작아질 떄 까지 반복

1 loop 당 배열의 마지막인 데이터는 오름차순으로 자동 정렬이 되기떄문에 종료조건에 "(- loop)"를 추가한다.

let temp 라는 변수를 만들어 비교 후 큰 숫자를 담을 수 있는 그릇을 만들었다.

이후 array[i] 와 array[ i + 1]울 비교한다.