1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > java随机快速排序 Java-随机枢轴无法快速排序

java随机快速排序 Java-随机枢轴无法快速排序

时间:2023-08-22 20:27:37

相关推荐

java随机快速排序 Java-随机枢轴无法快速排序

我在理解此分区方法时遇到了麻烦.使用随机数据透视似乎无效,仅当我将其中之一用作数据透视似乎有效:

> arr [左]

> arr [右-1]

> arr [(左右)/ 2]

但是,我认为任何元素都应该起作用.当我将其更改为arr [1]之类的代码时,代码将停止工作…我是否对数据透视表有所误解?

这是partition()方法的代码:

public static int partition(int arr[], int left, int right) {

// Pick a pivot point. Can be any element.

int pivot = arr[(left + right) / 2];

while (left <= right) {

while (arr[left] < pivot) {

left++;

}

while (arr[right] > pivot) {

right--;

}

if (left <= right) {

swap(arr, left, right);

left++;

right--;

}

}

return left;

}

附带说明一下,我也不确定为什么我们要从partition()方法返回左端.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。