C#算法 选择排序、冒泡排序、插入排序

网友投稿 377 2022-09-04

C#算法 选择排序、冒泡排序、插入排序

1.冒泡排序:

方法一:

public static int[] MaoPao(int[] arr) { //执行多少次 for (int i = 0; i < arr.Length; i++) { //每执行1次,把最大的放在最后 for (int j = 0; j < arr.Length - 1; j++) { int a = arr[j]; int b = arr[j + 1]; if (a>b) { arr[j+1] = a; arr[j] = b; } } } return arr; }

冒泡排序2

public static int[] MaoPao2(int[] arr) { for (int i = arr.Length-1; i >=1; i--) { for (int j = 0; j<= j-1; j++) { int a = arr[j]; int b = arr[j + 1]; if (a > b) { arr[j + 1] = a; arr[j] = b; } } } return arr; }

选择排序;找最小的,放在前面,再找第2个小的,直到找完。

//选择排序 public static int[] XuanZhe(int[] arr) { int min, temp; //执行多少次 for (int i = 0; i < arr.Length; i++) { min = i; //最小值先取当前第1个 for (int j = i + 1; j < arr.Length; j++)//j从第2个值开始取 { if (arr[j] < arr[min]) { min = j; } } //先把最小值取出来了,再操作 temp = arr[i]; arr[i] = arr[min]; arr[min] = temp; } return arr; }

3.插入排序

后面一个和前面几个比较,是放前面,中间,还是后面

public static int[] InsertSort(int[] arr) { int inner, temp; //执行多少次 for (int i = 0; i < arr.Length; i++) { temp = arr[i]; inner = i; while (inner > 0 && arr[inner - 1] >= temp) { arr[inner] = arr[inner - 1]; inner -= 1; } arr[inner] = temp; foreach (var item in arr) { Console.Write(item + " "); } Console.WriteLine(); } return arr; }

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:ERP系统上传文档信息下载(十八)
下一篇:SqlServer性能优化 手工性能收集动态管理视图(三)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~