开发工具与关键技术:Visual Studio2015
撰写时间:2019年7月24日
最原始的交换排序思想:对待排序序列中的记录两两比较其关键字,发现两个记录呈现逆序时就交换两记录的位置,直到没有逆序的记录为止。
交换排序有两种:冒泡排序和快速排序。而今天我们要做的事冒泡排序
其实快速排序是对冒泡排序的一种改进,冒泡排序是稳定的排序算法,快速排序是不稳定的排序算法,但是快速排序的效率比冒泡排序高。
冒泡排序的基本思路是:对待排序序列的相邻记录的关键字进行比较,使较小关键字的记录往前移,而较大关键字的记录往后移
优点:每趟结束时,不仅能挤出一个最大值到最后面位置,还能同时部分理顺其他元素;一旦下趟没有交换发生,还可以提前结束排序。
C#
namespace 冒泡排序{
class Program
{
static void Main(string[] args)
{
int temp = 0;
int[] arr = {9, 21, 76, 28, 68, 8, 3, 99, 37};
Console.WriteLine("排序前的顺序:");
foreach (int item in arr)
{
Console.Write(item + ",");
}
Console.WriteLine();
for (int i = 0; i < arr.Length - 1; i++)
{
for (int j = 0; j < arr.Length - 1 - i; j++)
{
if (arr[j] > arr[j + 1])
{
temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
}
Console.WriteLine("排序后的顺序:");
foreach (int item in arr)
{
Console.Write(item+",");
}
Console.WriteLine();
Console.ReadKey();
}
}
}
初始关键字排序: 9, 21, 76, 28, 68, 8, 3, 99, 37
第一次排序结果: 9,21,28,68,8,3,76,37,99
第二次排序结果: 9,21,28,8,3,68,37,76,99
第三次排序结果: 9,21,8,3,28,37,68,76,99
第四次排序结果: 9,8,3,21,28,37,68,76,99
第五次排序结果: 8,3,9,21,28,37,68,76,99
第六次排序结果: 3,8,9,21,28,37,68,76,99
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)