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