Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // сортировка методом какого-то рандомного хуя
- #include <iostream>
- #include <conio.h>
- void print_arr(int *arr, int n) {
- for(int i = 0; i < n; i++)
- std::cout << arr[i] << " ";
- std::cout << std::endl;
- std::cout << std::endl;
- }
- void qs(int *s_arr, int first, int last) {
- int i = first;
- int j = last;
- int m = s_arr[(first+last)/2];
- do {
- while(s_arr[i] < m) i++;
- while(s_arr[j] > m) j--;
- if(i <= j) {
- if(s_arr[i] > s_arr[j]) {
- int temp = s_arr[j];
- s_arr[j] = s_arr[i];
- s_arr[i] = temp;
- }
- print_arr(s_arr, last-1);
- i++;
- j--;
- }
- } while (i <= j);
- if(i < last)
- qs(s_arr, i, last);
- if(j > first)
- qs(s_arr, first, j);
- }
- int main() {
- int n = 16;
- int arr[] = { 4, 9, 7, 6 , 2 ,3 , 8, 14, 15, 9, 3, 0, 3, 3, 9, 8 };
- print_arr(arr, n);
- qs(arr, 0, n-1);
- print_arr(arr, n);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment