一、概念类
什么是冒泡排序?
冒泡排序(Bubble Sort):重复地走访要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小)错误,就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素已经排序完成。
这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡,最终会上浮到顶端一样,故名“冒泡排序”。
二、代码类(从小到大排序)
int temp = 0; //定义一个中间变量
int[] nums = new int[] { 5,20,-5,0,958,5 }; //定义数组nums,并给其赋值
for (int i = 0; i < nums.Length - 1; i++) //for循环:数组中有5个元素,需要进行5-1=4轮比较
{
for (int j =0; j <nums.Length-1 -i ; j++) //for循环:第一轮比较5-1-0=4次,第二轮比较5-1-1次,第三轮比较5-1-2次(规律:每次的循环次数为5-1-i次)
{
if (nums[j] < nums[j + 1]) //如果第一位数小于第二位数
{
temp = nums[j]; //则将第一位数赋值给temp变量
nums[j] = nums[j + 1]; //第二位数将值赋值给第一位数
nums[j + 1] = temp; //temp变量再将其值赋值给第二位数
}
}
}
for (int p = 0; p < nums.Length; p++) //遍历的讲数组逐个显示出来
{
Console.Write(nums[p]+"\t"); //在控制台上写入内容,注:\t为制表符,需要以字符串的形式书写
}
Console.ReadKey();