求c# 快速排序(quick sort)源代码!
求c# 快速排序(quick sort)源代码源代码!
假设待排序的是一维整形数组 int[] arry = new int[17] { 1, 4, 6, 23, 2, 56, 7, 2, 46, 78, 89, 123, 34, 4, 6, 68, 9 };
------解决方案--------------------可以用冒泡
直接插入排序
希尔排序
快速排序
选择排序
....
//交换排序 (冒泡排序)
public class BubbleSort
{
public void Sort(int m[])
{
int flag=1;
int temp=0;
for(int i=1;i<m.length&&flag==1;i++)
{
System.out.println("i="+i);
flag=0;
for(int j=0;j<m.length-i;j++)
{
if(m[j]>m[j+1])
{
flag=1;
temp=m[j+1];
m[j+1]=m[j];
m[j]=temp;
}
}
}
}
public static void main(String args[])
{
int [] m={2,6,1,32,53,22};
BubbleSort bs=new BubbleSort();
bs.Sort(m);
for(int i=0;i<m.length;i++)
{
System.out.println(m[i]);
}
}
}
------解决方案--------------------C# code
//简单的一个排序方法
int[] arry = new int[17] { 1, 4, 6, 23, 2, 56, 7, 2, 46, 78, 89, 123, 34, 4, 6, 68, 9 };
for (int i = 0; i <arry.Length; i++)
{
Array.Sort(arry);
Console.WriteLine(arry[i]);
}
//冒泡排序
for (int i = 0; i < arry.Length-1; i++)
{
for (int j = 0; j < arry.Length-1-i; j++)
{
if (arry[j]>arry[j+1])//如果要降序,换成小于号就成
{
//交换元素
int temp = arry[i];
arry[j] = arry[j + 1];
arry[j + 1] = temp;
}
}
}
for (int i = 0; i <arry.Length; i++)
{
Console.WriteLine(arry[i]);
}