惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
D
DataBreaches.Net
人人都是产品经理
人人都是产品经理
aimingoo的专栏
aimingoo的专栏
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
I
InfoQ
F
Fortinet All Blogs
J
Java Code Geeks
Last Week in AI
Last Week in AI
美团技术团队
大猫的无限游戏
大猫的无限游戏
有赞技术团队
有赞技术团队
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
量子位
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Apple Machine Learning Research
Apple Machine Learning Research
小众软件
小众软件

博客园 - 阿伟

转一个哥们的日记看了让你吐血 IT技术和职位小览和应聘注意事项 生活中的笑话 男人25岁前的忠告(转) 经典承诺 怎样对待男人和女人之间关系 插入排序(C#) 如何关闭常见端口(113、4899、389、6129等端口) 一些字符串操作的常用用法 - 阿伟 - 博客园 选择排序(C#) C#常用函数 几个网络术语!~ net命令研究 股票术语集锦 找女朋友的标准,男人不看后悔一辈子!!! DataGrid自定义分页存储过程 男生给女生最牛B的告白 一个光棍的呐喊! 令人呕吐的几则笑话^_^
快速排序(c#)
阿伟 · 2006-03-04 · via 博客园 - 阿伟

using System;


namespace QuickSorter
{
 
public class QuickSorter
 
{
  
private void Swap(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]<pivot)
    l
++;
   
while(list[r]>=pivot)
    r
--;
    
if(l<r)
     Swap(
ref list[l],ref list[r]);
   }
while(l<r);
   list[low]
=list[r];
   list[r]
=pivot;
   
if(low+1<r)
    Sort(list,low,r
-1);
   
if(r+1<high)
    Sort(list,r
+1,high);
  }

 }

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

 }



}