选择排序
int temp = 0;//定义中间变量
int[] s = { 12, 5, 6, 8, 7, 4, 2 };
for (int i = 0; i < s.Length-1; i++)
{
int min = s[i];//假设数组中第一个数是最小的
int minIndex = i;//记录下标
for (int j = i+1; j < s.Length; j++)//找出下一个数
{
if (min>s[j])//如果第一个大于第二个
{
min = s[j];//将最小的数赋给min
minIndex = j;//记录下标
}
}
//交换值
temp = s[i];
s[i] = s[minIndex];
s[minIndex] = temp;
}
//遍历输出
foreach (var item in s)
{
Console.WriteLine(item);
}
Console.ReadKey();
}
冒泡排序
int[] s = { 6, 5, 4, 3, 2, 1 };
for (int i = 0; i < s.Length - 1; i++)
{
for (int j = i + 1; j < s.Length; j++)
{
//如果前面的值大一后面的值就交换
if (s[i] > s[j])
{
int aa = s[j];
s[j] = s[i];
s[i] = aa;
}
}
}
//遍历输出
foreach (var item in s)
{
Console.WriteLine(item);
}
Console.ReadKey();