回答編集履歴

1

大幅に内容変更

2020/03/24 07:46

投稿

kaina
kaina

スコア418

test CHANGED
@@ -1,3 +1,39 @@
1
- jインクリメントしてどうする?
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
- printlnしたいのはソート後のaの中身ではないの?
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
+ ```