【发布时间】:2020-09-17 23:14:09
【问题描述】:
我正在为我的计算机科学课制作一个基本程序,它应该对数组执行选择排序。
问题是,它在过程中间停止,我不知道为什么。
它曾经给我一个超出范围的异常,由于某种原因它不再这样做了。
如果有人可以帮助我修复它,我将不胜感激。
import java.util.Random;
public class main {
public static void main(String[] args) {
int i;
int j;
int k;
int tausch;
//int size = 10;
Random rand = new Random();
int z[] = new int[10];
for(i=0;i<10;i++) {
z[i] = rand.nextInt(10) + 1;
}
for(i=0;i<z.length;i++) {
System.out.print(z[i]+", ");
}
long startTime = System.nanoTime();
for(i=0;i<z.length;i++) {
k = i;
for(j=i+1;j<10;i++) {
if(z[k] > z[j]) {
k = j;
}
}
tausch = z[i];
z [i] = z[k];
z[k] = tausch;
}
long endTime = System.nanoTime();
long totalTime = endTime - startTime;
System.out.println();
for(i=0;i<z.length;i++) {
System.out.print(z[i]+", ");
}
System.out.println();
System.out.print(totalTime);
}
}
【问题讨论】:
-
您没有在第二个循环中增加变量 j
标签: java arrays sorting selection-sort