// ConsoleApplication21.cpp : 定义控制台应用程序的入口点。 // VS2013 #include "stdafx.h" #include <iostream> #include <algorithm> void selectSort(int a[], const int n) { int k, temp; for (int i = 0; i < n - 1; i++) { k = i; //从arr[i]检查到arr[n-1],最小的数在a[k]; for (int j = i; j < n; j++) { if (a[j] < a[k]) k = j; //k指示当前找到的最小整数 } if (i != k) //交换a[i]与a[k] { temp = a[i]; a[i] = a[k]; a[k] = temp; } } } //测试selectSort int _tmain(int argc, _TCHAR* argv[]) { int arr[]{3, 5, 8, 9, 10, 2, 30, 7}; selectSort(arr, sizeof(arr)/sizeof(int)); std::for_each(std::begin(arr), std::end(arr), [](int n)//c++11中的Lambdas(匿名函数) { std::cout << n << " "; }); return 0; }
原文:http://my.oschina.net/hejunsen/blog/389991