C#几种常用的排序算法
生活随笔
收集整理的這篇文章主要介紹了
C#几种常用的排序算法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1 冒泡排序法
冒泡排序法#region?冒泡排序法public?void?Sort(int[]?list)
{
????int?j,temp;
????j=?1;
????while((j<list.Length))
????{
????????for(int?i=0;i<list.Length?-j;i++)
????????{
????????????if(list[i]<list[i+1])
????????????{
????????????????temp?=?list[i];
????????????????list[i]?=?list[i+1];
????????????????list[i+1]?=?temp;
????????????}
????????}
????????j++;
????}
}
#endregion
?
2 選擇排序法
選擇排序法#region?選擇排序法public?void?SortChoice(int?[]?list)
{
????int?min;
????for(int?i=0;i<list.Length-1;i++)
????{
????????min=i;
????????for(int?j=i+1;j<list.Length;j++)
????????{
????????????if(list[j]<list[min])
????????????????min=j;
????????}
????????int?t=list[min];
????????list[min]=list[i];
????????list[i]=t;
????}
}
#endregion
?
3 插入排序法
插入排序法#region?插入排序法public?void?SortInsert(int?[]?list)
{
????for(int?i=1;i<list.Length;i++)
????{
????????int?t=list[i];
????????int?j=i;
????????while((j>0)&&(list[j-1]<t))
????????{
????????????list[j]=list[j-1];
????????????--j;
????????}
????????list[j]=t;
????}
}
#endregion
?
4 希爾排序法
希爾排序法#region?希爾排序法public?void?SortShell(int?[]?list)
{
????int?inc;
????for(inc=1;inc<=list.Length/9;inc=3*inc+1);
????for(;inc>0;inc/=3)
????{
????????for(int?i=inc+1;i<=list.Length;i+=inc)
????????{
????????????int?t=list[i-1];
????????????int?j=i;
????????????while((j>inc)&&(list[j-inc-1]>t))
????????????{
????????????????list[j-1]=list[j-inc-1];
????????????????j-=inc;
????????????}
????????????list[j-1]=t;
????????}
????}
}
#endregion
?
轉載于:https://www.cnblogs.com/jiliang/archive/2009/04/22/CSharp_ArraySort.html
總結
以上是生活随笔為你收集整理的C#几种常用的排序算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C# 要调用VC++ DLL时参数问题请
- 下一篇: 使用ASP.NET Abstractio