Algorithm

배열(복제, 버블정렬)

수오니니 2022. 5. 8. 23:01

배열의 복제

System.arraycopy(num, 0, newNum, 0, num.length);

-> num[0]에서 newNum[0]으로 num.length개의 데이터를 복사

 

 

버블정렬 알고리즘(Bubble Sort)

가장 기초적인 정렬 알고리즘이나 거의 사용되지 않는 정렬 알고리즘이다.

 

- 데이터를 ‘비교’하면서 찾기 때문에 ‘비교 정렬’이며 정렬의 대상이 되는 데이터 외에 추가적인 공간을 필요로 하지 않기 때문에 ‘제자리 정렬(in-place-sort)’이기도 앞에서 차례대로 비교하기 때문에 ‘안정 정렬’이기도 하다.

- 배열의 길이가 n일때, 배열의 첫번째부터 n-1까지의 요소에 대해, 근접한 값과 크기를 비교하여 자리바꿈을 반복

 

장점

  • 추가적인 메모리 소비가 작다
  • 구현이 쉽다

단점

  • 다른 정렬 알고리즘에 비해 교환 과정이 많아 가장 많은 시간을 소요.

 

버블정렬을 이용한 오름차순 정렬(자바의정석 예제 5-10)