java - Java中的快速排序

标签 java quicksort

我应该在java中执行快速排序算法来对数组{50,20,65,30,75,25,90}进行排序。这是我到目前为止所拥有的:

public class QuickSort {
public static int partition(int arrayName[], int down, int up){
    int i = down, j = up;
    int temp;
    int pivot = arrayName[(down + up) / 2];

    while (i <= j){
        while (arrayName[i] < pivot)
            i++;
        while (arrayName[j] > pivot)
            j--;
        if (i <= j){
            temp = arrayName[i];
            arrayName[i] = arrayName[j];
            arrayName[j] = temp;
            i++;
            j--;

        }
    }
    return i;

}
public static void main(String[] args) {
    int [] arrayName = {50, 20, 65, 30, 75, 25, 90};

    System.out.println(partition(arrayName, down, up)); 

}
}

我在 print 语句上收到一个错误(似乎在这些方面有很多麻烦),指出 down 和 up 无法解析为变量。我该如何修复它才能成功打印排序列表?

最佳答案

这是因为您没有在 main 方法中定义任何名为 downup 的变量。您应该指定值而不是那些名称。

关于java - Java中的快速排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9104570/

相关文章:

java - 使用 Qt 在 Android 上实现 NFC

java - 多表 td 元素的 Xpath

java - Sedgewick Quicksort 没有完全意义

python - Python 中的快速排序抛出 RecursionError

java - FutureTask 保持活跃

java - ’字符在 jdbc 中被转换为’

java - 如何在 Hibernate 中将字符串映射到数据库序列

php - usort() 排序算法如何工作?

c - QuickSort 排序正整数,有时排序后第一个值是负整数

java - Java 中排序和交换元素的最快方法