回答編集履歴
1
大幅に内容変更
test
CHANGED
@@ -1,3 +1,39 @@
|
|
1
|
-
|
1
|
+
真面目に見て、指摘事項をコメントで追記しました。
|
2
2
|
|
3
|
+
|
4
|
+
|
5
|
+
```java
|
6
|
+
|
7
|
+
public class Main{
|
8
|
+
|
9
|
+
public static void main(String[] args){
|
10
|
+
|
11
|
+
int[] a ={5,3,2,9,0};
|
12
|
+
|
3
|
-
|
13
|
+
for(int i= 0;i<a.length-1;i++){
|
14
|
+
|
15
|
+
for(intj=a.length-1;j>i;j++){ //intとjの間にスペースが無い、jをインクリメントすると配列の範囲外
|
16
|
+
|
17
|
+
if(a[j]>a[j+1]){ // ここもj+1だと配列の範囲外
|
18
|
+
|
19
|
+
int tmp = a[i]; // 上のif分で比較はa[j]とその隣の値で比較してるのに、tmpに退避する値はa[i]?
|
20
|
+
|
21
|
+
a[i]=a[j]; // バブルソートは配列内の隣り合った値を入れ替えてソートをする手法ですが、これだと隣り合った値にはならない
|
22
|
+
|
23
|
+
a[j]=tmp;
|
24
|
+
|
25
|
+
}
|
26
|
+
|
27
|
+
}
|
28
|
+
|
29
|
+
}
|
30
|
+
|
31
|
+
for(int i:a){
|
32
|
+
|
33
|
+
System.out.println(i);
|
34
|
+
|
35
|
+
}
|
36
|
+
|
37
|
+
}
|
38
|
+
|
39
|
+
```
|