java代码实现快速排序
2012-11-06 14:12
316 查看
package src;
public class QSort
{
/**
* @param args
*/
public static void main(String[] args)
{
// TODO 自动生成方法存根
quicksort qs = new quicksort();
int data[] = {44,22,2,32,54,22,88,77,99,11};
qs.data = data;
qs.sort(0, qs.data.length-1);
qs.display();
}
}
class quicksort
{
public int data[];
private int partition(int sortArray[],int low,int hight)
{
int key = sortArray[low];
while(low<hight)
{
while(low<hight && sortArray[hight]>=key)
hight--;
sortArray[low] = sortArray[hight];
while(low<hight && sortArray[low]<=key)
low++;
sortArray[hight] = sortArray[low];
}
sortArray[low] = key;
return low;
}
public void sort(int low,int hight)
{
if(low<hight)
{
int result = partition(data,low,hight);
sort(low,result-1);
sort(result+1,hight);
}
}
public void display()
{
for(int i=0;i<data.length;i++)
{
System.out.print(data[i]);
System.out.print(" ");
}
}
}
public class QSort
{
/**
* @param args
*/
public static void main(String[] args)
{
// TODO 自动生成方法存根
quicksort qs = new quicksort();
int data[] = {44,22,2,32,54,22,88,77,99,11};
qs.data = data;
qs.sort(0, qs.data.length-1);
qs.display();
}
}
class quicksort
{
public int data[];
private int partition(int sortArray[],int low,int hight)
{
int key = sortArray[low];
while(low<hight)
{
while(low<hight && sortArray[hight]>=key)
hight--;
sortArray[low] = sortArray[hight];
while(low<hight && sortArray[low]<=key)
low++;
sortArray[hight] = sortArray[low];
}
sortArray[low] = key;
return low;
}
public void sort(int low,int hight)
{
if(low<hight)
{
int result = partition(data,low,hight);
sort(low,result-1);
sort(result+1,hight);
}
}
public void display()
{
for(int i=0;i<data.length;i++)
{
System.out.print(data[i]);
System.out.print(" ");
}
}
}
相关文章推荐
- 【算法与数据结构】冒泡、插入、归并、堆排序、快速排序的Java实现代码
- JAVA一个快速排序实现代码
- 关于快速排序的Java代码实现
- Java 快速排序(QuickSort)原理及实现代码
- Java、Scala、Go以相同方式实现快速排序代码量比较
- java 算法之快速排序实现代码
- 算法 -- Java实现快速排序(图解 + 代码实现)
- java代码实现快速排序
- java快速排序代码实现
- 算法-java代码实现快速排序
- Java 快速排序(QuickSort)原理及实现代码
- 快速排序及其java实现代码
- 冒泡、插入、归并、堆排序、快速排序的Java实现代码
- java分页代码实现1
- 第三方网站微信登录java代码实现
- 60. Permutation Sequence | Java最短代码实现
- Java NIO原理 图文分析及代码实现
- java注解的基本操作(java注解用代码的基本实现)
- 用Java代码实现类似Excel单变量求解的功能(Case study-Facebook User Base Growth )
- Java-十种内部排序实现(选择,冒泡,插入,希尔,堆,归并,快速,基数,计数,桶)及代码下载