C#演算法-------(四)快速排序 (轉)
前面我已經推出了三種排序的演算法,比較簡單。今天我又寫了排序的演算法。希望多多指教。具體的思想,我不做答了。前人的。
using System;
namespace QuickSorter
{
public class QuickSorter
{
private void S(ref int l,ref int r)
{
int s;
s=l;
l=r;
r=s;
}
public void Sort(int [] list,int low,int high)
{
int pivot;
int l,r;
int mid;
if(high<=low)
return;
else if(high==low+1)
{
if(list[low]>list[high])
Swap(ref list[low],ref list[high]);
return;
}
mid=(low+high)>>1;
pivot=list[mid];
Swap(ref list[low],ref list[mid]);
l=low+1;
r=high;
do
{
while(l<=r&&list[l]
while(list[r]>=pivot)
r--;
if(l
}while(l
list[r]=pivot;
if(low+1
if(r+1
}
}
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};
QuickSorter q=new QuickSorter();
q.Sort(iArrary,0,13);
for(int m=0;m<=13;m++)
Console.WriteLine("{0}",iArrary[m]);
}
}
}
已經編譯透過,執行環境: xp V 7.0
作者:to:solarsoft@163.com">顧劍輝
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-991263/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 演算法系列(四)排序演算法中篇--歸併排序和快速排序演算法排序
- 四、歸併排序 && 快速排序排序
- C#演算法----(三)希爾排序 (轉)C#演算法排序
- 排序演算法__快速排序排序演算法
- 排序演算法:快速排序排序演算法
- 排序演算法-快速排序排序演算法
- 排序演算法——快速排序排序演算法
- 排序演算法 - 快速排序排序演算法
- C#演算法-----(一)選擇排序 (轉)C#演算法排序
- C#演算法----(二)插入排序 (轉)C#演算法排序
- 排序演算法之 '快速排序'排序演算法
- #排序演算法#【4】快速排序排序演算法
- 《排序演算法》——快速排序(Java)排序演算法Java
- 【JAVA演算法】排序演算法 -- 快速排序Java演算法排序
- 【演算法】快速排序演算法排序
- 快速排序演算法排序演算法
- 排序演算法(四)排序演算法
- c#排序演算法C#排序演算法
- 用c#進行快速排序C#排序
- 排序演算法-Java實現快速排序演算法排序演算法Java
- 演算法之旅:快速排序演算法排序
- 演算法之快速排序演算法排序
- 排序演算法 - 快速插入排序和希爾排序排序演算法
- C#資料結構與演算法5-C# 快速排序C#資料結構演算法排序
- 三種快速排序演算法以及快速排序的優化排序演算法優化
- C#堆排序演算法C#排序演算法
- 畫江湖之演算法篇【排序演算法】快速排序演算法排序
- 畫江湖之演算法篇 [排序演算法] 快速排序演算法排序
- java:快速排序演算法與氣泡排序演算法Java排序演算法
- 前端演算法:快速排序演算法前端演算法排序
- 演算法之常見排序演算法-氣泡排序、歸併排序、快速排序演算法排序
- 白話經典演算法系列之六 快速排序 快速搞定 【轉】演算法排序
- 排序演算法之快速排序的實現排序演算法
- Sorting 排序演算法: Quick Sort 快速排序排序演算法UI
- 看動畫學演算法之:排序-快速排序動畫演算法排序
- 經典排序演算法 - 快速排序Quick sort排序演算法UI
- 演算法 | 快速排序詳解演算法排序
- 演算法導論-快速排序演算法排序