gpt4 book ai didi

java - 创建一个 int 类型的随机数组。 java

转载 作者:行者123 更新时间:2023-12-02 00:34:42 25 4
gpt4 key购买 nike

我需要创建一个随机的 int 数组并按我自己的类对其进行排序。这是我制作数组的地方:

public class MyProgram9{
public static void main(String[] args){

int[] list = new int[10];
for (int i=0; i<10; i++){
int n = (int)(Math.random()*9 + 1);
list[i] = n;

System.out.println(list[i] + " ");
}
list.QuickSort();
}
}

然后我尝试使用另一个类对其进行排序(QuickSort 类)。我的问题是如何从同一文件夹实现此类,以便我可以使用它。这是快速排序类:

public class QuickSort{
public static void quickSort(int[] list){
quickSort(list, 0, list.length - 1);
}

private static void quickSort(int[] list, int first, int last) {
if (last > first) {
int pivotIndex = partition(list, first, last);
quickSort(list, first, pivotIndex - 1);
quickSort(list, pivotIndex + 1, last);
}
}

/** Partition the array list[first..last] */
private static int partition(int[] list, int first, int last) {
int pivot = list[first]; // Choose the first element as the pivot
int low = first + 1; // Index for forward search
int high = last; // Index for backward search

while (high > low) {
// Search forward from left
while (low <= high && list[low] <= pivot)
low++;

// Search backward from right
while (low <= high && list[high] > pivot)
high--;

// Swap two elements in the list
if (high > low) {
int temp = list[high];
list[high] = list[low];
list[low] = temp;
}
}

while (high > first && list[high] >= pivot)
high--;

// Swap pivot with list[high]
if (pivot > list[high]) {
list[first] = list[high];
list[high] = pivot;
return high;
}
else {
return first;
}
}
}

对所有信息感到抱歉。

最佳答案

如果您的意思是如何连接这两个类,您的代码是错误的。您必须对数组调用静态快速排序方法。喜欢:

public class MyProgram9{
public static void main(String[] args){

int[] list = new int[10];
for (int i=0; i<10; i++){
int n = (int)(Math.random()*9 + 1);
list[i] = n;

System.out.println(list[i] + " ");
}
QuickSort.quicksort(list);
}
}

关于java - 创建一个 int 类型的随机数组。 java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8142195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com