我的C#学习历程
来源:互联网 发布:mac词典设置 编辑:程序博客网 时间:2024/05/29 20:00
冒泡排序
class Program { //声明一个全局变量 static List<int> Lis_ = new List<int>(); static void Main(string[] args) { //调用Fun_Ran方法,从0~100中随机数字 Fun_Ran(Lis_, 20,0,100); //调用冒泡排序方法 Buble(Lis_); } static void Fun_Ran(List<int> list, int count, int min, int max) { //实例一个随机 Random number = new Random(); for (int index = 0; index < count; index++) { //从最小值和最大值中随机一个值赋值于一个变量,并将这个变量添加到链表中 int value = number.Next(min, max); list.Add(value); } Lis_ = new List<int>(list.ToArray()); } //冒泡排序;从一段数列中分别选取两个数进行比较, //第一个数从数列的前端循环选取,第二个数从数列的后端循环开始选取 //在两两比较的过程中,如果第一个数大于第二个,将交换他们的位置 //当数列中所有数都被比较过后,排序完成 static void Buble(List<int> list) { List<int> Lis_Bub = Lis_; bool flag = true; int temp; for (int i = 0; i < Lis_Bub.Count&&flag; ++i) { flag = false; for (int j = Lis_Bub.Count - 1; j > i; --j) { if (Lis_Bub[j] < Lis_Bub[j - 1]) { //如果满足上述条件则执行以下代码,flag会变为true //反之,将不执行以下代码,此时flag会保留第一次循环之后的false //那么,再次进入第一次循环时判定条件会变为false,就不再执行循环 //这样可以提高排序效率,以下是交换数据位置 temp = Lis_Bub[j - 1]; Lis_Bub[j - 1] = Lis_Bub[j]; Lis_Bub[j] = temp; flag = true; } } } Printf(Lis_Bub); } static void Printf(List<int> list) { Console.Write("结果是:"); foreach (int i in list) { Console.Write("{0} ",i); } Console.WriteLine(); } }
0 0
- 我的c#学习历程
- 我的C#学习历程
- 我的C#学习历程
- 我的C#学习历程
- 我的学习历程
- 我的EJB学习历程
- 我的c++学习历程
- 我的Java学习历程
- 我的DotNet学习历程
- 我的FPGA学习历程
- 我的学习历程2
- 我的FPGA学习历程
- 我的ABAP学习历程
- 我的cocos2dx学习历程
- 我的太极拳学习历程
- 我的OSGI学习历程
- 我的J2EE学习历程
- 我的学习内核历程
- .NET-IList和List的Reverse陷阱
- 注解的注解--MyAnnotation2
- docker 镜像
- java中识别string类型的运算表达式
- ORA-01502: 索引报错问题
- 我的C#学习历程
- vs中载入serialport类时源文件报错问题
- java学习-- 类的继承
- Android EventBus 详解(二)
- Struts2-ResultType-2-全局结果集(Global_Results)
- Spring+Struts2+Hibernate整合配置
- 向mysql数据表中添加字段creat_time时,遇到关于CURRENT_TIMESTAMP的问题
- WPF 中对文件操作方式JSON文件,基于C#
- tomcat开放远程调试