欢乐贴+选择排序

小马和小骚要开始写技术博客了,感觉身边技术氛围越来越好了,虽然快毕业了,但是这样的选择终是好的。看着博大的博客更新的好快啊,大神们都在进步,我等民工还有何理由不去好好学习。好的开始从适合自己的选择开始,把前面写的快速排序算法放上来,别看简单啊,要是笔试时让写个快速排序,还真不一定能记得

原理:



实现:

class quicksort{

public int getMiddle(int low,int heigh,float arr[]) {  //快速排序法

float average=arr[low];

while (low<heigh) {

while (low<heigh&&arr[heigh]>=average) {  

heigh--;

}

arr[low]=arr[heigh];  //比中轴小的记录移到左边

while (low<heigh&&arr[low]<=average) {

low++;

}

arr[heigh]=arr[low]; //比中轴大的记录移到右边

}

arr[low]=average;

return low;

}

public void quick(int low,int heigh,float arr[]) {

if (low<heigh) {

int middle=getMiddle(low, heigh, arr);

quick(low, middle-1, arr);

quick(middle+1,heigh, arr);

}

}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章