public class QSort {
/**
*
* @param pData 需要排序的数组
* @param left 左边的位置,初始值为0
* @param right 右边的位置,初始值为数组长度
*/
public static void QuickSort(int[] pData,int left,int right)
{
int i,j;
int middle,temp;
i = left;
j = right;
middle = pData[left];
while(true)
{
while((++i)<right-1 && pData[i]<middle);
while((--j)>left && pData[j]>middle);
if(i>=j)
break;
temp = pData[i];
pData[i] = pData[j];
pData[j] = temp;
}
pData[left] = pData[j];
pData[j] = middle;
if(left<j)
QuickSort(pData,left,j);
if(right>i)
QuickSort(pData,i,right);
}
public static void main(String[] args){
int[] pData = new int[10];
for(int i = 0; i< 10; i++)
pData[i] = (int)(Math.random()*100);
for(int i = 0; i<pData.length; i++)
System.out.print(pData[i]+" ");
QSort.QuickSort(pData, 0, pData.length);
System.out.println("\n***********************");
for(int i = 0; i<pData.length; i++)
System.out.print(pData[i]+" ");
}
}
分享到:
相关推荐
详细解释了快速排序的java实现.里面有代码,还有注释说明
一个简单的快速排序算法,用JAVA编写的
基数排序算法 java实现 还有基数排序的原理文档
实现合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序算法的java实现。
快速排序算法c++实现,快速实现插入排序十万个数(调用)。可以改成输入。并附加了程序运行计时,用于测试时间复杂度,可以移除。绝对能用
各种排序算法java实现各种排序算法java实现各种排序算法java实现各种排序算法java实现各种排序算法java实现
Java 快速排序,目前来说效率很高的一种排序算法,好理解。
快速排序算法java代码,内附运行结果,望对大家有帮助,谢谢!
快速排序算法C语言实现,快排序算法QuickSort.cpp
JAVA冒泡排序和快速排序算法,符合实验报告要求哦
Java排序算法实现 Java排序算法实现 Java排序算法实现
知道快速排序算法的思想,但是一直都没有动手写,今天写了下,发现还不是那么容易
快速排序算法实现,随机输入一组数有序输出,用java语言实现
快速排序算法C语言实现快速排序算法C语言实现 www.edsionte.com/techblog
常见的七大排序算法Java实现.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
各种排序算法 JAVA代码实现 所有排序算法 JAVA代码实现
java 快速排序 折半查找的界面实现 (递归与分治法)
快速排序算法 java.doc
java实现的常用的几种基本排序算法,插入、交换、选择、归并