티스토리 뷰
#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
- javascript
- mobx
- props
- Action
- Next.js
- design system
- typescript
- async
- useEffect
- promise
- useRef
- type alias
- reactdom
- Polyfill
- storybook
- server side rendering
- await
- es6
- webpack
- react hooks
- atomic design
- reflow
- computed
- reducer
- Babel
- react
- return type
- rendering scope
- state
- hydrate
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함