练习:
2-2-2 选择排序
#include<iostream> #include<vector> void print_element(std::vector<int> &coll){ for(auto i: coll) std::cout << i << " "; std::cout << std::endl; } void select_sort(std::vector<int> &vi){ for(int i = 0; i < (int) vi.size(); ++i){ int min_index = i; for(int k = i + 1; k < (int) vi.size(); ++k){ if(vi[k] < vi[min_index]) min_index = k; } int swap = vi[min_index]; vi[min_index] = vi[i]; vi[i] = swap; } } int main(void){ std::vector<int> vi; int num; while(std::cin>>num){ vi.push_back(num); } print_element(vi); select_sort(vi); print_element(vi); return 0; }
输出结果 E:\coding\Algorithms>review.exe 9 8 7 6 5 4 3 2 1 eof 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9