c# 冒泡排序
来源:互联网 发布:linux 目录使用情况 编辑:程序博客网 时间:2024/06/11 01:05
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
排序规则:从大到小排序,进行两两比较
原始数据7个元素
原始数据7个元素:
10,20,30,40,50,60,70
先10与20比较10>20不成立 交换
20,10,30,40,50,60,70
然后第二个元素20与第三个元素30比较,不成立交换位置
……
……
20,30,40,50,60,70,10第1趟 比较了6次
30,40,50,60,70,20,10第2趟 比较了5次
40,50,60,70,30,20,10第3趟 比较了4次
50,60,70,40,30,20,10第4趟 比较了3次
60,70,50,40,30,20,10第5趟 比较了2次
70,60,50,40,30,20,10第6趟 比较了1次
也就是n个数需要排n-1趟
第t趟比较的次数为:n-t次
7个元素,排7-1=6趟,第1趟比较7-1=6次,第2趟比较7-2=5次……第6趟比较7-6=1次
i=0 第一趟
i=1 第二趟
-->趟数:i+1 t=i+1
For(int j = 0;j<n-(i+1);j++)//控制当第i+1趟是比较的次数
static void Main(string[] args)
{
int[] scores = { 18, 20, 48, 76, 20, 38, 87, 90, 37, 45, 65, 65, 34, 67, 95 };
for (int i = 0; i < scores.Length - 1; i++)//控制比较的趟数
{
for (int j = 0; j < scores.Length - (i + 1); j++)//控制第i+1趟比较的次数
{
if (scores[j] < scores[j + 1])
{
int temp = scores[j];
scores[j] = scores[j + 1];
scores[j + 1] = temp;
}
}
}
for (int i = 0; i < scores.Length; i++)
{
Console.Write(scores[i] + ",");
}
Console.WriteLine();
Console.WriteLine("数组长度为:"+scores.Length);
Console.ReadKey();
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
- 冒泡排序C#版
- C# 冒泡排序
- c# 冒泡排序
- C#冒泡排序
- C# 冒泡排序!
- C#实现冒泡排序
- C# 冒泡排序法
- C#冒泡排序
- C#冒泡排序
- C# 冒泡排序
- C# 冒泡排序
- c# 冒泡排序
- C#冒泡排序代码
- C#冒泡排序
- c#冒泡排序法
- c# 泛型 冒泡排序
- c#冒泡排序算法
- C#冒泡排序
- 乱序执行技术
- J2EE中使用Spring集成quartz计划任务
- Oracle temp file查询和resize
- 交换两个数组使两个数组和的差最小
- SQL优化
- c# 冒泡排序
- struts中的namespace
- 让我们的MAPLAB跑飞起来
- 第七周实验报告 任务二
- js 实现的算法
- 继承
- 转载一篇关于中断的文章
- GridBagConstraints 基本属性
- win7登陆总是提示临时用户的问题解决方案