作者every823 (TING)
看板java
标题[问题] Bubble Sort的问题,不知道哪里错了
时间Fri Nov 9 10:47:41 2018
大家好~小妹最近才刚踏入Java学习.以前完全没写程式经验
如有一些很新手的问题,请鞭小力一点,感谢各位!
目前在学Bubble Sort,但写了一段希望先用随机数跑出来後,
再进行Bubble Sort,然後回传进行时间,
但是在最下面排序後的下一行a却显示有误
for (int
a = 0; a < aNum.length; a++)
想请各位大大解惑一下!或是该怎麽调整呢?
谢谢大家~
附上连结
https://www.codepile.net/pile/abBK9pkQ
-----------------------------------------------
public class LabBubblesort {
public static void main(String[] args) {
int[] aNum = new int[5];
for (int a = 0; a < aNum.length; a++) {
aNum[a] = (int) (Math.random() * 100);
System.out.print(" 排 序 前 :");
System.out.print(" " + aNum[a] + "\t");
System.out.println();
System.out.println(System.currentTimeMillis());
int n = aNum.length;
int t;
for (int i = n - 2; i >= 0; i--) { // 进行气泡排序法
for (int j = 0; j <= i; j++) {
if (aNum[j] > aNum[j + 1]) {
t = aNum[j];
aNum[j] = aNum[j + 1];
aNum[j + 1] = t;
}
}
System.out.print(" 排 序 後 :");
for (int a = 0; a < aNum.length; a++)
System.out.print(" " + aNum[a] + "\t");
System.out.println();
System.out.println(System.currentTimeMillis());
}
}
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.218.5.190
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1541731663.A.441.html
1F:→ starburs: 大括号 11/09 11:01
2F:推 t52101t: 找个贴程式码的网站来贴你的code吧 这样看好痛苦 11/09 11:56
好的~
https://www.codepile.net/pile/abBK9pkQ
3F:→ adrianshum: 痛苦主要不在於在哪贴,而是这段code 的indentation 11/09 12:30
4F:→ adrianshum: 一塌胡涂... 11/09 12:30
抱歉~
※ 编辑: every823 (61.218.5.190), 11/09/2018 12:37:19
5F:推 motherboard: a重复使用了阿... 11/09 13:54
7F:→ fayhong: 这个档案不能 copy,你是希望读者重头照你的程式key一遍? 11/09 16:07
8F:→ fayhong: 产生资料的 for loop 怎麽没有 close 起来再做排序呢? 11/09 16:09
9F:→ fayhong: bubble sort 不管是从前到後还是从後到前,i 与 j 都有 11/09 16:10
10F:→ fayhong: 1 个项次差,才能进行比较,如果按照你的方式,j = 0~i 11/09 16:11
11F:→ fayhong: 那 i 应该是 n - 1 到 1,而不是 0 11/09 16:11
12F:→ fayhong: 而且,j 一定不能 = i,所以 j 应该是 0 ~ (i - 1) 11/09 16:11
13F:→ fayhong: 这样写 bubble sort 很难读,建议你还是用传统的写法 11/09 16:12
14F:→ fayhong: i = 0 ~ n - 2, j = i+1 ~ n-1 这样比较好读 11/09 16:12
15F:→ every823: 谢谢大家~~~~^^ 11/09 21:21
16F:推 motherboard: 原PO多去找几篇coding style的文章看看 很有帮助的 11/09 23:41
17F:→ every823: 好的~~谢谢 11/10 21:55