当前位置:首页 > java > 正文

java实现快速排序详解

  • java
  • 2024-05-20 01:08:38
  • 5220

1、java实现快速排序
classSolution{
privatevoidswap(int[]nums,inti,intj){
if(i!=j){
inttemp=nums[i];
nums[i]=nums[j];
nums[j]=temp;
}
}
privateintpartition(int[]nums,intleft,intright){
inti=left-1;
intpivot=nums[right];
for(intj=left;j if(nums[j] 交换(nums,++i,j);


交换(nums,++i,right);
返回;


privatevoidquickSort(int[]nums,intleft,intright){
if(left>=right){
return;

intmiddle=部分(nums,左,右);
quickSort(nums,左,中-1);
quickSort(nums,中+1,右);
}
publicint[]sortArray(int[]nums){
quickSort(nums,0,nums.length-1);
returnnums;
}
}


2、java编程实现随机数组的快速排序

通过java编程实现随机数组快速排序的步骤如下:

2在新创建的类中,声明一个生成随机数的随机变量,然后声明一个10长度的int数组

3、将生成的随机数放入a的array-e中。

4、使用排序算法对随机矩阵进行排序。

具体代码如下:

importjava.util.Random;
publicclassDemo{
publicstaticvoidmain(String[]args){
intcount=0;
Randomrandom=newRandom();
inta[]=newint[10];
while(count<10){
a[count]=random.nextInt(1000);//生成0-999之间的随机数
inti=0;长度-1;i++){
intmin=i;
for(intj=i+1;j                                                  !=i){
intb=a[min];
a[min]=a[i];
a[i]=b;
}
for(intc=c