C# 交换排序
2024-09-01 12:54:19
用交换排序的方式实现对int类型的数组arrays从小到大排序
思路:
第一步:一个长度为n的数组,把最小的放第一行,第二小的数字放第二行,,,,
0(0为数组的第一项) 第一小的数字
1 第一小的数字
2 第一小的数字
,,,,,
n-1 第n小的数字
第二步 把相应的数字放到相应的位置,即是把最小数字放到数组第一项(索引为0)。
把第一个数字拿出来,依次和后面的数字进行比较,若比后面的大,就交换位置,若小则不变化位置。重复的动作为索引为0比其他索引的位置的数字大,交换位置(其他索引为索引为0之后的所有数字,用变量j来表示),即实现代码如下
即if(arrays[ 0 ]>arrays[ j ])
{
交换顺序
}
第三步,(把数组最小的数字放到顶部?)比较这个重复动作重复的次数,即j的取值范围为索引为1到达数组最大的长度减去1。即实现把数组最小的数字放到顶部了
如何把相应的数字放到相应的数组
for(int j=i+1; j<=arrays.Length-1;j++)
if(arrays[i]>arrays[j])
{
int temp=arrays[j];
int[i] =arrays[j];
int[j] =temp;
}
第四步,把索引为0,取为变量为i的数字代替。即后循环比较所有的数字。
for(int i=0; i<=arrays.Length-2; i++)
{
for(int j=i+1; j<=arrays.Length-1;j++)
if(arrays[i]>arrays[j])
{
int temp=arrays[j];
int[i] =arrays[j];
int[j] =temp;
}
}
最新文章
- MySQL 从 5.5 升级到 5.6,启动时报错 [ERROR] Plugin &#39;InnoDB&#39; init function returned error
- 用ssh整合时,用sessionfactory的getCurrentSession()获取不到session
- AJAX-初学AJAX本地环境配置
- 【转载】Linux 与 BSD 有什么不同?
- [原创]自定义view之:快速开发一款Material Design风格的dialog的开源项目MDDialog
- linux第2天 信号 wait
- 2016 - 1- 21 - RunLoop使用(2016-1-24修改一次)&;(2016 - 1 - 24 再次修改)
- poj 3378 二维树状数组
- 开始学习web前端技术
- Android Studio下添加引用jar文件和so文件
- 15 3Sum(寻找三个数之和为指定数的集合Medium)
- Quercus
- 老男孩Python全栈学习 S9 日常作业 013
- Fillder安装,如何解决证书无法导出
- 4.5Python数据处理篇之Matplotlib系列(五)---plt.pie()饼状图
- 【矢量绘图工具】Adobe Illustrator (AI) CC 2019 for Mac 23.0
- python josn包
- JavaScript大杂烩5 - JavaScript对象的若干问题
- 【转】使用TCP协议连续传输大量数据时,是否会丢包,应如何避免?
- Java继承相关知识总结