데이터 구조 - 정렬 - 빠 른 정렬 의 무 작위 선택 기준 법
구현 코드 는 다음 과 같 습 니 다:
class Test{
/*
* @Description :
* @param array
* @param low
* @param high
* @return : int
* @exception :
* @date : 2019/1/9 11:22
*/
public static int partition(int [] array,int low,int high){
int tmp=array[low];
while(low<high){
while(low<high && array[high]>tmp){
high--;
}
if(low>=high){
break;
}else{
array[low]=array[high];
}
while(low<high&&array[low]<tmp){
low++;
}
if(low>=high){
break;
}else{
array[high]=array[low];
}
}
array[low]=tmp;
return low;
}
public static void swap(int []array ,int low,int rand){
int tmp=array[low];
array[low]=array[rand];
array[rand]=tmp;
}
public static void quick(int [] array,int low,int high){
Random random=new Random();
int randNum=random.nextInt(high-low)+low+1; //low high
swap(array,low,randNum);
int par=partition(array,low,high); //
if(par>low+1){
quick(array,low,par-1);
}
if(par<high-1){
quick(array,par+1,high);
}
}
public static void quickSort(int [] array){
quick(array,0,array.length-1);
}
public static void main(String [] args){
int array []=new int[10000];
Random random=new Random();
for(int i=0;i<array.length;i++){
array[i]=random.nextInt(10000)+1;
}
quickSort(array);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.