Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #define OPTIMAL
- int main()
- {
- const int arrSize{ 10 };
- int arr[arrSize]{ 6,1,4,2,8,9,11,3,2,1 };
- //int arr[arrSize]{ 1,1,1,2,2,9,11,1,2,1 };
- //int arr[arrSize]{ 1,2,3,4,5,6,7,8,9,10 };
- //int arr[arrSize]{ 1,2,3,4,5,6,7,9,8,7 };
- //int arr[arrSize]{ 10,9,8,7,6,5,4,3,2,1 };
- //int arr[arrSize]{0};
- for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << ' '; } std::cout << '\n';
- for (int head{ 0 }; head < arrSize; ++head)
- {
- for (int tail{ arrSize - 1 }; tail > head; --tail)
- {
- #ifndef OPTIMAL
- if (arr[tail] < arr[tail - 1])
- #else
- if (arr[tail] < arr[head])
- #endif
- {
- int tmp{ arr[tail] };
- #ifndef OPTIMAL
- arr[tail] = arr[tail - 1];
- arr[tail - 1] = tmp;
- #else
- arr[tail] = arr[head];
- arr[head] = tmp;
- #endif
- for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << ' '; } std::cout << " head:" << head << '\n';
- }
- }
- }
- for (int i{ 0 }; i < arrSize; ++i) { std::cout << arr[i] << ' '; } std::cout << '\n';
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement