Advertisement
avr39-ripe

sortMinTempl

Feb 15th, 2020
224
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.83 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. template <typename T> void printArr(T arr, int arrSize)
  4. {
  5.     for (int i{ 0 }; i < arrSize; i++) { std::cout << arr[i] << " "; } std::cout << '\n';
  6. }
  7.  
  8. template <typename T> void sortArr(T arr[], int arrSize)
  9. {
  10.     printArr(arr, arrSize);
  11.     for (int insertPos{ 1 }; insertPos < arrSize; ++insertPos)
  12.     {
  13.         for (int testInsert{insertPos}; testInsert > 0 && arr[testInsert] < arr[testInsert - 1]; --testInsert)
  14.         {
  15.             T tmp{ arr[testInsert - 1] };
  16.             arr[testInsert - 1] = arr[testInsert];
  17.             arr[testInsert] = tmp;
  18.  
  19.             printArr(arr, arrSize);
  20.         }
  21.     }
  22.     printArr(arr, arrSize);
  23. }
  24.  
  25. int main()
  26. {
  27.     const int arrSize{ 10 };
  28.     int arr[arrSize] { 6,1,4,2,8,9,11,3,2,1 };
  29.     //int arr[arrSize] = { 1,1,1,2,2,9,11,1,2,1 };
  30.     //int arr[arrSize] = { 1,2,3,4,5,6,7,8,9,10 };
  31.     //int arr[arrSize] = {0};
  32.  
  33.     sortArr(arr, arrSize);
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement