首页 > 编程知识 正文

c语言冒泡排序法代码降序,C语言冒泡排序算法详解

时间:2023-05-03 22:43:02 阅读:189112 作者:1449

冒泡排序:
一串无序数值,从第一个数值开始依次与后面的数字比较,交换位置,得到有序的数值(升序排列/降序排列),此过程成为冒泡排序。

冒泡排序法:
用冒泡排序,将无序数值转化位有序数值的方法,称为冒泡排序法。

运行效果:
升序排列

降序排列

实现以上功能:
[代码+解释]
升序排列(小→大)

int[] arr = { 1, 5, 6, 4, 5 ,0}; Console.WriteLine("冒泡排序后的数值:"); for (int i = 0; i < arr.Length - 1; i++) { //-i的优点 不再和比过的数值比较 //不-i的缺点 会和比过的数字再经行一次比较 for (int j = 0; j < arr.Length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { //将数值进行调换 大的往后排 int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } //循环输出排序后的数值 for (int i = 0; i < arr.Length; i++) { Console.Write(arr[i]); }

降序排列(大→小)

int[] arr = { 1, 5, 6, 4, 5 ,0}; Console.WriteLine("冒泡排序后的数值:"); for (int i = 0; i < arr.Length - 1; i++) { //-i的优点 不再和比过的数值比较 //不-i的缺点 会和比过的数字再经行一次比较 for (int j = 0; j < arr.Length - 1 - i; j++) { if (arr[j] < arr[j + 1]) { //将数值进行调换 小的往后排 int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } //循环输出排序后的数值 for (int i = 0; i < arr.Length; i++) { Console.Write(arr[i]); }

总结 [如何实现排序]:

双重循环 将相邻数值进行比较根据比较结果,调换位置最后,将排列后的新数值,循环输出。

温馨提示:
喜欢灰碟分享的小伙伴不要忘记关注噢~这样子,想找我时就不会迷路啦*

联系方式:
Vx+:LHD7575

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。