버블 정렬
2020. 11. 16. 19:46ㆍData Structure
버블정렬은 정렬 중 가장 기본적인 정렬이다. 구동 방식은 배열의 가장 앞의 두개의 값을 비교 후 , 만약 뒤의 값이 더 작다면, 위치를 바꾼다음 인덱스를 둘다 +1한 다음 똑같은 방식으로 진행을 계속하는 것이다. 사실 다른 사이트들에서 많이 설명이 자세한 것들이 많아 여기서는 빠르게 코드를 보고 싶은 사람만 봤으면 좋겠다.
시간복잡도는 n제곱이다. 버블 정렬의 장점은 쉽게 구현을 할 수 있다는 것이지만, 복잡도의 문제에 따라 배열의 크기가 커지면 커질수록 시간이 상당해져서 큰 경우에는 잘 사용하지 않는다. 그나마 리턴값이 배열 그대로라 메모리를 잡아먹지 않는다는 점이 장점?인 것 같다.
function BubbleSort(array){
for(let i = 0; i < array.length; i++){
for(let j = 0; j < array.length; j++){
if(array[j] > array[j+1]){
var temp = array[j];
array[j] = array[j+1]
array[j+1] = temp;
}
}
}
return array;
}
'Data Structure' 카테고리의 다른 글
합병정렬 (0) | 2020.11.20 |
---|---|
삽입정렬 (0) | 2020.11.18 |
선택정렬 (0) | 2020.11.17 |
Stack(1) - 정의 (0) | 2020.10.29 |