Advertisement
Petro_zzz

сортировка

Apr 22nd, 2024
835
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #pragma once
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. void my_swap(int& a, int& b) {
  7.     //cout << "IN FUN: " << a << b << endl;
  8.     int tmp = b;
  9.     b = a;
  10.     a = tmp;
  11.     //cout << "IN FUN: " << a << b << endl;
  12. }
  13.  
  14. void show_arr(int size, int arr[]) {
  15.     for (int k = 0; k < size; k++)
  16.         cout << arr[k] << " ";
  17.     cout << endl;
  18. }
  19.  
  20. int find(int size, int arr[], int ell) {
  21.     for (int k = 0; k < size; k++) {
  22.         if (arr[k] == ell)
  23.             return k;
  24.     }
  25.     return -1;
  26. }
  27.  
  28. void discrete_sort(int size, int arr[]) {
  29.     // элементы массива могут быть { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
  30.     int frequency[10]{};
  31.  
  32.     for (int k = 0; k < size; k++) {
  33.         frequency[arr[k]]++;
  34.     }
  35.  
  36.     int m = 0;
  37.     for (int k = 0; k < 10; k++) {
  38.         for (int n = 0; n < frequency[k]; n++) {
  39.             arr[m] = k;
  40.             m++;
  41.         }
  42.     }
  43.     show_arr(10, frequency);
  44. }
  45.  
  46. void bubble_sort(int size, int arr[]) {
  47.  
  48. }
  49.  
  50. void select_sort(int size, int arr[]) {
  51.     int min_id;
  52.     for (int n = 0; n < size - 1; n++) {
  53.         min_id = n;
  54.         for (int k = n + 1; k < size; k++) {
  55.             if (arr[k] < arr[min_id]) {
  56.                 min_id = k;
  57.             }
  58.         }
  59.         my_swap(arr[n], arr[min_id]);
  60.     }
  61.  
  62. }
  63.  
  64. void insert_sort(int size, int arr[]) {
  65.  
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement