티스토리 뷰
#include <iostream>
using namespace std;
void swap(int* a,int *b){
int temp = *a;
*a = *b;
*b = temp;
}
int quick(int* arr,int left,int right){
if(left<right) {
int pivot = left;
int i = left;
int j = right;
while (i < j) {
while (arr[pivot] > arr[i]) //피벗보다 왼쪽을 스캔하면서 비정상인놈 걸러냄(피벗보다 큰놈들 = 비정상)
i++;
while (arr[pivot] < arr[j]) //피벗보다 오른쪽을 스캔하면서 비정상인놈 걸러냄(피벗보다 작은놈들 = 비정상)
j--;
if (i < j) {
swap(&arr[i], &arr[j]);
i++;j--;
}
}
swap(&arr[left], &arr[j]);
pivot = j;
quick(arr, left, pivot - 1);
quick(arr, pivot + 1, right);
}
}
int main() {
int arr[6] = {6,5,4,3,2,1};
quick(arr, 0, 5);
for (int k : arr)
cout << k << " ";
cout<<endl;
return 0;
}
'자료구조' 카테고리의 다른 글
원형 큐 구현 연습 (0) | 2018.08.10 |
---|---|
선택정렬 구현 연습 (0) | 2018.08.09 |
내식대로 구현한 자바 연결리스트(linkedlist) 코드 (0) | 2017.09.27 |
배열로 구현한 큐 (자바코드) (0) | 2017.09.13 |
[자료구조/선형자료구조](직선)큐와 원형큐 (1) | 2017.08.27 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- useEffect
- Action
- props
- return type
- Polyfill
- Babel
- state
- reflow
- useRef
- async
- Next.js
- await
- design system
- webpack
- javascript
- hydrate
- mobx
- storybook
- promise
- computed
- reactdom
- react hooks
- reducer
- react
- rendering scope
- server side rendering
- es6
- typescript
- type alias
- atomic design
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함