您好,登录后才能下订单哦!
几种常用的C#排序方法分别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
这五种C#排序方法,其实在其他语言平台中也是常见的,因此C#排序方法也可以说是其他语言的排序方法,只不过实现的语言不同罢了。
在网上看到很多经典排序方法,算法分:
1:插入排序 a.直接插入排序 b.希尔排序
2:交换排序 a.冒泡排序 b.快速排序
3:选择排序 a.直接选择排序
4:归并排序 a.归并排序
5:分配排序 a.箱排序 b.基数排序
本人常用的三种C#排序方法:1.直接选择排序 2.直接插入排序 3.冒泡排序;我用C#语言来讲解一下。
第一种:冒泡排序
原理:对一个数列,我们将它进行轮循和交换,每次轮循出***数或最小数放在对尾,依次进行循环,轮循长度为-1。
public class EbullitionSorter { public void Sort(int[] arr) { for(int i=arr.length-1;i>0;i--) { for(int j=0;j { if(arr[i] { int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } } }
第二种:选择排序
原理:对一个数列,我们选出***或最小的数,放在队尾,依次循环下去,循环长度为-1;由于没有冒泡排序那每次都要比较,因此比冒泡排序要快。
public class SelectionSorter { private int min; public void Sort(int[] arr) { for(int i=0;i { min=i; for(int j=i+1;j { if(arr[j] { min=j; } } int temp=arr[min]; arr[min]=arr[i]; arr[i]=temp; } } }
第三种:插入排序
原理:对一个数列,我们从第二个数开始,将它与它前面的数字进行比较,每次选出***
或最小的数放在队首,因而形成一个有序的队列,所以它比选择排序更快。
public class InsertionSorter { public void Sort(int[] arr) { for(int i=1;i { int temp=arr[i]; int j=i; while((j>0)&&(arr(j-1)>temp)) { arr[j]=arr[j-1]; --j; } arr[j]=temp; } } }
以上的三种方法是我自己常用的,很简单,程序也很容易懂的,对初学者很有帮助。
很多人学过面向对象思想,下次就写下怎么对对象排序。
看完上述内容,你们掌握几种常用的C#排序方法分别是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。