#include <bits/stdc++.h>
using namespace std;
//퀵정렬 : 내림차순

void quick(int data[], int left, int right){

    int num, i, j, temp;
    if(right > left){
        num = data[right];
        i = left - 1;
        j = right;

        for(;;){
            while(data[++i] > num);
            while(data[--j] < num);
            if(i >= j)
                break;

            swap(data[i], data[j]);
        }
        swap(data[i], data[right]);

        quick(data, left, i-1);
        quick(data, i+1, right);
    }
}
int main() {

    int a[10] = {2,3,4,0,9,8,7,6,5,1};
    for(auto x : a){
        printf("%d ", x);
    }
    puts("\n");
    quick(a, 0, 9);
    for(auto x : a){
        printf("%d ", x);
    }
    return 0;
}

'정보올림피아드-KOI > 기초 문법 문제' 카테고리의 다른 글

머지 정렬 Merge Sort  (0) 2021.12.31
머지 정렬 Merge Sort  (0) 2021.12.31
함수3 - 형성평가6  (0) 2021.12.30
591 : 함수3 - 자가진단6  (0) 2021.12.30
590 : 함수3 - 자가진단5  (0) 2021.12.30

www.youtube.com/watch?v=KGyK-pNvWos&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=4

 

 

 

 

 

 

 

 

 

+ Recent posts