donaricano-btn

퀵 정렬  - Quick Sorting

- 다른 정렬 알고리즘에 비해 빠르다

- 분할, 정렬 알고리즘 사용(divide and conquer)

- pivot 이라는 요소를 지정하고 나누어 각각 리스트를 비교한 후 합친다

- 재귀함수 호출 사용

- 다른 알고리즘에 비해 복잡하게 느껴진다(me too...)


1. QuickSorting.class

1) 초기화


- 배열, 배열 크기를 정의


2) sort()

 

- 생성자 함수와 같이 값을 초기화 한다

- 퀵 정렬 호출


3) quickSort()

 


4) exchange(), print()

 

- 값 교환하는 부분과 상태를 표시


5) main()

 

블로그 이미지

리딩리드

,
donaricano-btn

인서트정렬 - Insertion sorting

- 작은 양에 데이터를 비교할 때 적합하다

- 간결하고 효율적이다


1. InsertionSorting.class

1) insert(int[] arry)


- 배열의 크기 -1만큼 회전한다

- 한번 회전 할때 마다 처음 회전 횟수를 기준으로 비교

(i = 1 이면 한번 비교, i = 2 요소 값 3개 두번 비교 i =3 이면 요소값 네개 세번 비교....)

- 버블 정렬과 비슷해보이지만 버블 정렬은 1회전에 모든 값을 돌면서 비교 하지만 인서트는 회전 할 때마다 비교값이 제한 되어있다


2) swap(int[] arry,  int j), print(int[] arry)

 

- 값의 위치를 변경 해주는 함수와 상태 값 출력


3) main()    

 



블로그 이미지

리딩리드

,
donaricano-btn

선택 정렬(Selection sorting) - Selection sorting

- 검색(searching) + 정렬(sorting) 이 함께 있는 구조이다


1. SelectionSorting.class

1) selection(int[] arry)


- 정렬을 시작한다

- 버블 정렬과는 다르게 마지막 for을 다 마친 후에 저장된 인덱스 번호로 swap을 한다


2) swap(int i, int k, int[]arry), print(int[] arry)

 


3) main()

 

블로그 이미지

리딩리드

,
donaricano-btn

버블정렬 - bubble sorting

- 회전을 하면서 앞뒤의 요소들을 비교한다

- 앞의 요소가 크다면 바로 뒤의 요소와 위치를 변경한다


1. BubbleSorting.class

1) bubble_sort()


- 정렬하는 함수

2) swap()

 

- 앞의 요소가 더 크다면 위치를 뒤에 요소와 변경한다

3) print()

 

- 정렬 상태를 반영한다

4) main()

 

블로그 이미지

리딩리드

,