数组内排序

 我来答
韦康宁lp

2020-12-10 · TA获得超过1.7万个赞
知道大有可为答主
回答量:1.5万
采纳率:82%
帮助的人:439万
展开全部
数据结构中的排序算法有很多:

选择排序 、交换排序、冒泡排序、希尔排序、快速排序、归并排序等等。

实际上,排序的方式不止这种,使用不同的思路,会得到不同的排序代码,下面给大家介绍几种常用的排序方法,供大家参考。

1.交换排序方法
交换排序的思路是首先找到最小的数,将他放到第一个位置,其次找到第二大的数,将他放到第二位置,如此知道找到n-1个数。

复制代码
1 for (int i = 0; i < nums.Length - 1; i++)
2 {
3 //在 i-(nums.Length-1) 范围内,将该范围内最小的数字提到i
4 for (int j = i + 1; j < nums.Length; j++)
5 {
6 if (nums[i] > nums[j])
7 {
8 //交换
9 int temp = nums[i];
10 nums[i] = nums[j];
11 nums[j] = temp;
12 }
13 }
14 }
复制代码

 2.冒泡排序:将下标0-n范围内的最大值沉到n位置,同理0-n-1的最大值沉到n-1位置。。。。。 

复制代码
1 for (int i = nums.Length - 1; i > 0; i--)
2 {
3 //在 0-i 范围内,将该范围内最大的数字沉到i
4 for (int j = 0; j < i; j++)
5 {
6 if (nums[j] > nums[j+1])
7 {
8 //交换
9 int temp = nums[j];
10 nums[j] = nums[j+1];
11 nums[j+1] = temp;
12 }
13 }
14 }
复制代码
3.选择排序的总体思路和交换排序的总体思路相似,都是将某个范围内的最小数提到该范围内的第一位,它的代码结构跟交换排
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式