兩種升序排序的方法

1,

package day03_1;
import java.util.Scanner;
public class ZuoYe4 {
 public static void main(String[] args) {
  Scanner scanner=new Scanner (System.in);
  System.out.println("請依次輸入三個整數:a,b,c(以空格隔開)");
    int a=scanner.nextInt(), b=scanner.nextInt(),c=scanner.nextInt();
    int d,e,f,g,second,third;//
    if(a>b){
     d=a;
     e=b;
    }else{
     d=b;
     e=a;
    }//d爲a,b中的最大值,e爲a,b中的最小值
    if(d>c){
     f=d;
     g=c;
    }else{
     f=c;
     g=d;
    }//f爲a,b,c中的最大值
    if(e>g){//再求第二小的值
     second=e;
     third=g;
    }else{
     second=g;
     third=e;
    }
    System.out.println("您輸入的是:");
    System.out.println("a="+a+",b="+b+",c="+c);
    System.out.println("升序排序後,結果爲:");
    System.out.println("a="+third+",b="+second+",c="+f);
 }
}  
//先找出三者中的最大值,再找出其餘的兩個較大值
2,
package day03_1;
import java.util.Scanner;
public class ZuoYe42 {
 public static void main(String[] args) {
  Scanner scanner=new Scanner (System.in);
  System.out.println("請依次輸入三個整數:a,b,c(以空格隔開)");
    int a=scanner.nextInt(), b=scanner.nextInt(),c=scanner.nextInt();
    System.out.println("您輸入的是:");
    System.out.println("a="+a+",b="+b+",c="+c);
    int temp;//
      if(a>b){
       temp=b;
       b=a;
       a=temp;
      }
      if(b>c){
       temp=c;
       c=b;
       b=temp;
      }//最大值c
      if(a>b){
       temp=a;
       a=b;
       b =temp;
      }//最小值a
    System.out.println("升序排序後,結果爲:");
    System.out.println("a="+a+",b="+b+",c="+c);
 }
}
//把最大值交換到最後,再比較和交換前面兩個位置上的數字。相對簡潔。

發佈了32 篇原創文章 · 獲贊 5 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章