java list排序_C#基础语法循环篇:冒泡排序算法讲解(附源码)

本文为初级C#或Java程序员示例讲解C#里经典的冒泡排序算法。介绍了其原理是比较相邻元素,将最大数字排到末尾,目的是实现从小到大排序。给出预设数组,详细说明了排序过程,并展示了核心代码及输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家好,今天我给大家示例顺便讲解一个C#里面的经典的循环算法之冒泡排序,可供一些初级C#或者Java程序员参考学习。

其原理:比较相邻的两个元素,每次比较完毕最大的一个数字排到本来的结尾

目的:按照从小到大的排序方式。

先预设已知数组一份:23, 67, 45, 19, 83, 36, 42, 15, 71, 52

第一轮比较相邻两个元素,如果左边元素大于右边元素,则两两交换。

比如71和52比较的结果就是,52在前,71在后;

然后71和67比较的结果,67在前,71在后;

以此类推,第一轮比较之后的结果是:23, 45, 19, 67, 36, 42, 15, 71, 52, 83

经过第一轮比较,最大的元素跑到了最后一个,所以第二轮比较,最后一个元素不需要进行比较了。

第二轮还是从索引0和1开始比较,只是不需要比较最后一个了,算法还是一样的。第三轮、第四轮以此类推。

排序之后的结果为:15, 19, 23, 36, 42, 45, 52, 67, 71, 83

核心代码如下:

for (int i = list.Count; i > 0; i--)//外层 循环比较遍数

{

for (int j = 0; j < i - 1; j++)

{

// 大于号就是从小到大排序,小于号就是从大到小排序

if (list[j] > list[j + 1]) //两个数进行比较,如果大于就交换

{

temp = list[j]; //temp 两个数交换时要有第三个数来过度

list[j] = list[j + 1];

list[j + 1] = temp;

}

}

Prin();

}

57309b274a8850a83073c93138e0d456.png

出结果:

16dd880058f01b0281e285e9e21fc58f.png

23 45 19 67 36 42 15 71 52 83

23 19 45 36 42 15 67 52 71 83

19 23 36 42 15 45 52 67 71 83

19 23 36 15 42 45 52 67 71 83

19 23 15 36 42 45 52 67 71 83

19 15 23 36 42 45 52 67 71 83

15 19 23 36 42 45 52 67 71 83

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值