avr39ripe

cppSortMinDemo

Jul 19th, 2021
1,024
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <chrono>
  3.  
  4. int main()
  5. {
  6.     const int randBegin{ 10 };
  7.     const int randEnd{ 99 };
  8.  
  9.     const int arrSize{ 10 };
  10.  
  11. //Ctrl+ K + C - comment
  12. //Ctrl + K + U - uncomment
  13.  
  14.     int arr[arrSize]{ 6,1,4,2,8,9,11,3,2,1 };
  15.     int copy{};
  16.     //char arr[arrSize]{ 'a','w','f','z','q','l','a','p','a','c' };
  17.     //char copy{};
  18.  
  19.     //int arr[arrSize]{ 1,2,3,4,5,6,7,8,9,10 };
  20.     //int arr[arrSize]{};
  21.  
  22.     srand(time(0));
  23.     //for (int i{ 0 }; i < arrSize; ++i) { arr[i] = randBegin + (rand() % (randEnd - randBegin)); }
  24.  
  25.     int min{ 0 };
  26.    
  27.  
  28.     for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << '\t'; } std::cout << '\n';
  29.  
  30.     for (int head{ 0 }; head < arrSize; ++head)
  31.     {
  32.         min = head;
  33.  
  34.         for (int minIdx{ head }; minIdx < arrSize; ++minIdx)
  35.         {
  36.             if (arr[min] > arr[minIdx]) { min = minIdx; }
  37.         }
  38.        
  39.         if (min != head)
  40.         {
  41.             // Premutation
  42.             copy = arr[head];
  43.             arr[head] = arr[min];
  44.             arr[min] = copy;
  45.  
  46.             for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << '\t'; } std::cout << '\n';
  47.             // Premutation
  48.         }
  49.  
  50.     }
  51.  
  52.     for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << '\t'; } std::cout << '\n';
  53.  
  54.     return 0;
  55. }
RAW Paste Data