15 11 18 A[0]A[4] 0 1 2 3 5 2 12 9 10 4 12 10 9 5 2 4 3 2 1 0 A 1,2,3,4,5 5,4,3,2,1 87
15 11 18 0 1 2 3 4 A 10 9 12 2 5 10 9 12 2 5 A[0]A[1] 9 10 12 2 5 A[1]A[2] 9 10 12 2 5 A[2]A[3] 9 10 2 12 5 A[3]A[4] 9 10 2 5 12 A[4] 9 10 2 5 12 A[0]A[1] 9 10 2 5 12 A[1]A[2] 9 2 10 5 12 A[2]A[3] 9 2 5 10 12 A[3] 9 2 5 10 12 A[0]A[1] 2 9 5 10 12 A[1]A[2] 2 5 9 10 12 A[2] 2 5 9 10 12 A[0]A[1] 2 5 9 10 12 A[1],A[0] 88
15 11 18 A[0]A[n-1] in-1,-1,1 j0,1,i-1 n-1,n-2,,1 A[j]A[j+1] Yes Temp A[j] A[j] A[j+1] A[j+1] Temp No A[j]A[j+1] 89
15 11 18 6-1 HP tokuten.txt IOFile tokuten.txt 55 63 39 87 48 70 35 77 59 44 jbuttonread jlabelread jbuttondisplay jbuttonbubblesort jtextarea1 jlabelsort UI jfilechooser tokuten.txt 90
15 11 18 jtextarea1 91
15 11 18 import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; int Tokuten[]= new int[100]; // int Num; // void jbuttonread actionperformed(actionevent e) { String Data; try { jfilechooser1.showopendialog(this); File FName=jFileChooser1.getSelectedFile(); BufferedReader fin=new BufferedReader(new FileReader(FName)); int i=0; while ((Data=fin.readLine())!=null) { Tokuten[i]=Integer.parseInt(Data); i++; Num=i; jlabelread.settext(" "); fin.close(); catch (Exception em) { jlabelread.settext(" "+em); 3-7 void jbuttondisplay actionperformed(actionevent e) { String Data=""; for (int i=0;i<num;i++) { Data=Data+Tokuten[i]+" n"; jtextarea1.settext(data); 92
15 11 18 p.89 void jbuttonbubblesort actionperformed(actionevent e) { int Temp; for (int i=num-1; i>=1 ;i--) { for (int j=0; j<=i-1 ;j++) { if(tokuten[j]>tokuten[j+1]) { Temp=Tokuten[j]; Tokuten[j]=Tokuten[j+1]; Tokuten[j+1]=Temp; jlabelsort.settext(" "); 93
15 11 18 HP BubbleSort.exe 6-2 5 BubbleSort.exe 5 5,4,3,2,1 94
15 11 18 A[0]A[4] 1 1 4 2 2 95
15 11 18 0 1 2 3 4 A 10 7 9 1 5 10 7 9 1 5 A[0]A[4] A[3] 10 7 9 1 5 A[0]A[3] 1 7 9 10 5 A[0] 1 7 9 10 5 A[1]A[4] A[4] 1 7 9 10 5 A[1]A[4] 1 5 9 10 7 A[1] 1 5 9 10 7 A[2]A[4] A[4] 1 5 9 10 7 A[2]A[4] 1 5 7 10 9 A[2] 1 5 7 10 9 A[3]A[4] A[4] 1 5 7 10 9 A[3]A[4] 1 5 7 9 10 A[3] 1 5 7 9 10 A[4] 96
15 11 18 A[0]A[n-1] i0,1,n-2 Min i Min ji+1,1,n-1 A[j]A[Min] No Yes Min j Min Temp A[i] A[i] A [M in] A[Min] Temp A[i]A[Min] 97
15 11 18 6-3 A[0]A[n-1] 98
15 11 18 6-4 6-2 tokuten.txt 6-2 jbuttonsentakusort void jbuttonsentakusort actionperformed(actionevent e) { int Temp,Min; for (int i=0;i<=num-2;i++) { Min=i; for (int j=i+1; j<=num-1;j++) { if(tokuten[j]< Tokuten[Min] ) { Min=j; Temp=Tokuten[i]; Tokuten[i]=Tokuten[Min]; Tokuten[Min] = Temp; jlabelsort.settext(" "); 6-5 HP SentakuSort.exe SentakuSort.exe 99
15 11 18 0 1 2 3 4 A 10 6 2 9 7 A[0] 10 6 2 9 7 A[1] 6 10 2 9 7 A[1]A[0]A[1] A[0]>A[1] 6 2 9 7 A[0] A[1] 6 10 2 9 7 A[2] 2 6 10 9 7 2 6 9 7 A[2]A[0]A[2] A[2]A[1]A[0] A[0]A[2] 2 6 10 9 7 2 6 9 10 7 2 6 9 10 7 A[3] A[3]A[0]A[3] A[3]A[2]A[1] A[1]<9 A[0]A[3] 2 6 9 10 7 A[4] 2 6 7 9 10 A[4]A[0]A[4] 2 6 7 9 10 A[0]A[4] 100
15 11 18 A[0]A[n-1] i0, 1, n- 2 A[0]A[i] Temp A [ j- 1] A[j-1] A[j] A[j] j i+1 j0 A[j-1] A [j] A[j] Temp j A[i+1]A[0]A[i+1] A[j-1]A[j] A[j-1] A[j] j j-1 while whilej1 A[j-1]A[j] 6-6 101
15 11 18 6-6 6-2 6-4 tokuten.txt 6-4 jbuttonsounyusort void jbuttonsounyusort actionperformed(actionevent e) { int Temp; for ( int i=0;i<=num-2;i++j=i+1; { int whi le ( j>=1 && Tokuten[j-1]>Tokuten[j] ) { Temp=Tokuten[j-1]; Tokuten[j-1]=Tokuten[j]; Tokuten[j]=Temp; j--; jlabelsort.settext(" "); 102
15 11 18 6-7 HP SounyuSort.exe 6-4 10 n(n-1)/2 n(n-1)/2 103
15 11 18 6-A score3.txt 59 5-B 3 104