정렬 알고리즘 종류정렬 종류 정렬 방법 최고 효율 평균 효율 최악 효율 특징 버블 정렬 교환 방식 n^2 n^2 n^2 구현하기 쉽다. 선택 정렬 교환 방식 n^2 n^2 n^2 삽입 정렬 삽입 방식 n n^2 n^2 코드가 간단하고 n의 수가 작을 때 유리하다. 병합 정렬병합 방식n x log(n)n x log(n)n x log(n)입력자료를 분할하여 병합하므로 별도의 기억장소가 필요하다.퀵 정렬 나누기(부분집합) 방식 n x log(n) n x log(n) n^2 분할한 입력자료를 재귀적으로 반복하여 정렬하므로 빠르다. 힙 정렬 선택 방식 n x log(n) n x log(n) n x log(n) 입력자료를 힙이라는 자료형을 유지하도록 선택하여 정렬한다. 셸 정렬 삽입 방식 n n^1.5 n^2 삽입..
퀵 정렬 퀵소트는 divide and conquer 방법을 통해 정렬한다. 리스트 가운데서 하나의 원소를 고른다. 이렇게 고른 원소를 피봇이라고 한다.피봇 앞에는 피봇보다 값이 작은 모든 원소들이 오고, 피봇 뒤에는 피봇보다 값이 큰 모든 원소들이 오도록 피봇을 기준으로 리스트를 둘로 나눈다. 이렇게 리스트를 둘로 나누는 것을 분할이라고 한다. 분할을 마친 뒤에 피봇은 더 이상 움직이지 않는다.분할된 두 개의 작은 리스트에 대해 재귀적으로 이 과정을 반복한다. 재귀는 리스트의 크기가 0이나 1이 될 때까지 반복된다.[ 위키백과 참조 ] 시간 복잡도 ( T(n) 은 n의 리스트를 정렬하는데 걸리는 시간 ) 평균적으로 O(nlog n) 의 시간복잡도를 갖는다. 최선의 경우 : O(nlog n) 최악의 경우 ..
- Total
- Today
- Yesterday
- 백준알고리즘
- 운영체제
- RelativeLayout
- handshake
- 윈도우
- 스프링부트
- LinearLayout
- HTTP
- frameLayout
- Android
- adapter
- BOJ
- windows
- 스프링
- 알고리즘
- OS
- 이진탐색트리
- 퀵정렬
- C
- WinDbg
- 백준
- DATABASE
- 네트워크
- C++
- ConstraintLayout
- layout
- debug
- 안드로이드
- listview
- 정렬 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |