我写了一种在三个单独的文件上生成数字1-2000、2000-1和随机数的方法。一个称为“最佳”的文件是1-2000,对于2000-1来说是最差的,对于随机文件来说是随机的。可以!
然后我进行了插入,选择和气泡排序。效果也很好。
当我调用不同的方法时,在一种算法对它们进行排序后,它将不会对其进行排序。我查看了文件,发现它不会更改文件本身。我不知道该怎么办
我尝试过的是在编写算法之前调用该方法。例如 creationfile(); bubbleort(最差); 发布这么多代码我感到很糟糕,但是我不知道如何向您展示我并不是要让别人来编写我的代码。我只需要其中一部分的帮助。
//here is a shorten bubbe sorting (just using one to be minimal)
public static void bubbleSort(int[] array) {
int numberOfItems = array.length;
int comp=0,exch=0,temp=0;
boolean cont = true;
for (int pass=1; pass != numberOfItems; pass++) {
if (cont) {
cont = false;
for (int index=0; index != numberOfItems-pass; index++) {
comp++;
if (array[index]> array[index+1]) {
exch++;
temp = array[index];
array[index] = array[index+1];
array[index+1] = temp;
cont = true;
...
break; // end outer if
}
System.out.println ("comparsion: " + comp); // end inner if
System.out.println ("exchange: " + exch); // end inner for
creatTestFiles method
int[] best = new int[2000];
;
try {
for (int i = stop; i >= stop1; i--) {
int worstnum =i+1;
worstText +=worstnum + " ";
}
// write worst case to respective file
fw.write(worstText);
fw.close();
}...
main method()
createTestFiles();
bubbleSort(worst);
insertionSort(worst);
selctionSort(worst);
插入式 对比:1999000 交换:1997001
泡泡排序 比较:3997 交流时间:1999
选择排序 对比:1999000 交流时间:1999
//这里的气泡位于顶部(所有不同),我不确定为什么。
泡泡糖
比较:1999000。
交换:1999000
插入式 比较:1999年 交换:0
选择排序 对比:1999000 交换:199 因此,如果我提出第一个算法,那是唯一可以对其进行排序的算法。下一个不会。