java之氣泡排序和選擇排序
阿新 • • 發佈:2019-02-18
import java.util.Scanner; public class FoundMax { public static void main(String[]args) { int[] a; int mida=0;//用於交換 int i=0; int j=0; int max=0; int min=0; a=new int[5]; Scanner s=new Scanner(System.in); System.out.println("請您輸入這五名同學的成績:"); for(i=0;i<5;i++) //給陣列賦值 { a[i]=s.nextInt(); } //輸出成績 for(i=0;i<5;i++) { System.out.println("a["+i+"]="+a[i]+" \t"); } max=a[0];//假設a[0]是最大值 for(i=1;i<5;i++)//找出最大的值 { if(a[i]>max) { max=a[i]; } } System.out.println("最大是:"+max); //氣泡排序 for(i=0;i<4;i++) { for(j=0;j<4-i;j++) { if(a[j]<a[j+1])//如果前一個數小於後一個數,就進行位置交換 { mida=a[j]; a[j]=a[j+1]; a[j+1]=mida; } } } System.out.println("氣泡排序結果:"); for(i=0;i<5;i++) { System.out.println("a["+i+"]="+a[i]+" \t"); } //選擇排序 for(i=0;i<4;i++) { for(j=i+1;j<5;j++)//從(i+1) 到 4 位置中找出比i位置小的數,然後交換 { if(a[j]<a[i])//逐個跟i位置的數比較 { mida=a[i]; a[i]=a[j]; a[j]=mida; } } } System.out.println("選擇排序結果:"); for(i=0;i<5;i++) { System.out.println("a["+i+"]="+a[i]+" \t"); } } }