C#排序算法大全

转载 2007年09月24日 14:21:00
一、冒泡排序(Bubble)

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();
}
}
}

二、选择排序(Selection)

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();
}
}
}

三、插入排序(InsertionSorter)

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();
}
}
}

四、希尔排序(ShellSorter)

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# 经典排序算法大全

C# 经典排序算法大全 选择排序 using System; using System.Collections.Generic; using System.Linq; using System.Tex...
  • u012025054
  • u012025054
  • 2014年10月22日 16:56
  • 3294

各种排序算法和查找算法

自己实现了一遍冒泡排序、选择排序、插入排序,留个念想 冒泡排序 简单来说就是从数组末端冒泡到数组当前位置 void bubblesort(unsigned char *data, u...
  • oushaojun2
  • oushaojun2
  • 2016年03月10日 16:35
  • 908

十大排序算法总结

排序算法有很多,所以在特定情景中使用哪一种算法很重要。为了选择合适的算法,可以按照建议的顺序考虑以下标准:  (1)执行时间  (2)存储空间  (3)编程工作     对于数据量较小的情形,...
  • aWangz
  • aWangz
  • 2014年03月28日 08:46
  • 9642

C#排序算法大全----冒泡排序

Bubble.cs-------------------------------------------------------------------------------------------...
  • luojinat2005
  • luojinat2005
  • 2006年03月09日 20:45
  • 437

C# 排序算法大全

 C# 排序算法大全 1.冒泡排序(Bubble)using System; namespace BubbleSorter{public class BubbleSorter{public void ...
  • airweilai
  • airweilai
  • 2008年07月03日 18:12
  • 392

C#排序算法大全

一、冒泡排序(Bubble) using System; namespace BubbleSorter { public class BubbleSorter { public void Sort(i...
  • napor001
  • napor001
  • 2007年06月09日 14:57
  • 397

C#排序算法大全----选择排序

//SelectionSort.cs//--------------------------------------------------------------------------------...
  • luojinat2005
  • luojinat2005
  • 2006年03月09日 23:08
  • 463

转贴:C#排序算法大全

C#排序算法大全土人2004-7-21一、冒泡排序(Bubble)using System; namespace BubbleSorter{ public class BubbleSorter {  ...
  • onlytiancai
  • onlytiancai
  • 2004年08月21日 17:41
  • 1681

C#排序算法大全(转载)

C#排序算法大全(转载)   冒泡排序           本人用了C#开发出冒泡排序算法。希望能为C#语言的学习者带来一些益处。不要忘了,学语言要花大力气学数据结构和算法。         usin...
  • juhengfei
  • juhengfei
  • 2008年09月16日 14:09
  • 1506

C#排序算法大全

 冒泡排序  本人用了C#开发出冒泡排序算法。希望能为C#语言的学习者带来一些益处。不要忘了,学语言要花大力气学数据结构和算法。using System; namespace BubbleSorter...
  • mathewsking
  • mathewsking
  • 2009年01月15日 15:46
  • 247
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#排序算法大全
举报原因:
原因补充:

(最多只允许输入30个字)