思路:每次把未排序序列中最小的数放在最前面,直到未排序序列为空,即,每次把最小的数找出来。时间复杂度:O(n^2)。
代码如下:
static void Main(string[] args)
{
int[] array = { 3, 45, 26, 18, 24, 37, 89, 6 };
Sort(array);
foreach(int item in array)
{
Console.Write("{0} ", item);
}
Console.ReadKey();
}
private static void Sort(int[] nums)
{
for(int i=0;i<nums.Length-1;i++)
{
for (int j=i+1;j<nums.Length;j++)
{
if(nums[i]>nums[j])
{
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
}
总结:选择排序是我最早会的排序算法了,不过当时我不知道这是选择排序。选择排序的思想比冒泡排序的思想更不抽象,比较贴合我们人的思维,还是很容易理解的。