C#如何开发排序算

发布时间:2021-12-01 16:27:43 作者:小新
来源:亿速云 阅读:123

这篇文章主要为大家展示了“C#如何开发排序算”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C#如何开发排序算”这篇文章吧。

冒泡排序

学语言要花大力气学数据结构和算法。

using System;   namespace BubbleSorter  {  public class BubbleSorter  {  public void Sort(int [] list)  {  int i,j,temp;  bool done=false;  j=1;  while((j<list.Length)&&(!done))  {  done=true;  for(i=0;i<list.Length-j;i++)  {  if(list[i]>list[i+1])  {  done=false;  temp=list[i];  list[i]=list[i+1];  list[i+1]=temp;  }  }  j++;  }   }  }  public class MainClass  {  public static void Main()  {  int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};  BubbleSorter sh=new BubbleSorter();  sh.Sort(iArrary);  for(int m=0;m<iArrary.Length;m++)  Console.Write("{0} ",iArrary[m]);  Console.WriteLine();  }  }  }

选择排序

本人用了C#开发排序算法。希望能为C#语言的学习者带来一些益处。不要忘了,学语言要花大力气学数据结构和算法。

using System;   namespace SelectionSorter  {  public class SelectionSorter  {  private int min;  public void Sort(int [] list)  {  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;  }   }  }  public class MainClass  {  public static void Main()  {  int[] iArrary=new int[]{1,5,3,6,10,55,9,2,87,12,34,75,33,47};  SelectionSorter ss=new SelectionSorter();  ss.Sort(iArrary);  for(int m=0;m<iArrary.Length;m++)  Console.Write("{0} ",iArrary[m]);  Console.WriteLine();   }  }  }

插入排序

插入排序算法。对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。

using System;   namespace InsertionSorter  {  public class InsertionSorter  {  public void Sort(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;  }   }  }  public class MainClass  {  public static void Main()  {  int[] iArrary=new int[]{1,13,3,6,10,55,98,2,87,12,34,75,33,47};  InsertionSorter ii=new InsertionSorter();  ii.Sort(iArrary);  for(int m=0;m<iArrary.Length;m++)  Console.Write("{0}",iArrary[m]);  Console.WriteLine();  }  }  }

希尔排序

希尔排序是将组分段,进行插入排序. 对想提高C#语言编程能力的朋友,我们可以互相探讨一下。如:下面的程序,并没有实现多态,来,帮它实现一下。

using System;   namespace ShellSorter  {  public class ShellSorter  {  public void Sort(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;  }  }  }  }  public class MainClass  {  public static void Main()  {  int[] iArrary=new int[]{1,5,13,6,10,55,99,2,87,12,34,75,33,47};  ShellSorter sh=new ShellSorter();  sh.Sort(iArrary);  for(int m=0;m<iArrary.Length;m++)  Console.Write("{0} ",iArrary[m]);  Console.WriteLine();  }  }  }

以上是“C#如何开发排序算”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. 集算器协助MongoDB计算之本地化排序
  2. C# 使用接口进行排序

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

上一篇:C#软件如何编写asp

下一篇:C#如何实现选择控制

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》