Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- template <typename T>
- void printArr(T arr[], int arrSize)
- {
- for (int i{ 0 }; i < arrSize; ++i)
- {
- std::cout << arr[i] << ' ';
- }
- std::cout << '\n';
- }
- template <typename T>
- void sortArr(T arr[], int arrSize)
- {
- int minIdx{ 0 };
- // printArr(arr, arrSize);
- for (int head{ 0 }; head < arrSize; head++)
- {
- minIdx = head;
- for (int minHead = head; minHead < arrSize; minHead++)
- {
- if (arr[minHead] <= arr[minIdx])
- {
- minIdx = minHead;
- }
- }
- if (arr[head] != arr[minIdx])
- {
- T tmp = arr[minIdx];
- arr[minIdx] = arr[head];
- arr[head] = tmp;
- printArr(arr, arrSize);
- }
- }
- // printArr(arr, arrSize);
- }
- template <typename T>
- void sortMin(T arr[], int arrSize)
- {
- int minElIdx{ 0 };
- T tmp;
- for (int i{ 0 }; i < arrSize; ++i)
- {
- minElIdx = i;
- for (int minIdx{ i } ; minIdx < arrSize; ++minIdx)
- {
- minElIdx = arr[minElIdx] >= arr[minIdx] ? minIdx : minElIdx;
- }
- if (arr[i] != arr[minElIdx])
- {
- tmp = arr[i];
- arr[i] = arr[minElIdx];
- arr[minElIdx] = tmp;
- printArr(arr, arrSize);
- }
- }
- }
- template <typename T>
- void sortBuble(T arr[], int arrSize)
- {
- T tmp;
- for (int head{ 0 }; head < arrSize; ++head)
- {
- for (int tail{ arrSize - 1 }; tail > head; --tail)
- {
- if (arr[tail] < arr[head])
- {
- tmp = arr[head];
- arr[head] = arr[tail];
- arr[tail] = tmp;
- printArr(arr, arrSize);
- }
- }
- }
- }
- int main()
- {
- const int arrSize{ 10 };
- int arr[arrSize]{2,4,3,2,6,7,11,0,1,5};
- char str[arrSize]{ 'a','d','e','c','q','z','x','p','n','f' };
- //int arr[arrSize]{1,2,3,4,5,6,7,8,9,10 };
- //int arr[arrSize]{0,0,0,0,0,0,0,0,0,0 };
- //printArr(str, arrSize);
- //sortBuble(str, arrSize);
- //printArr(str, arrSize);
- printArr(arr, arrSize);
- sortBuble(arr, arrSize);
- printArr(arr, arrSize);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement