JAVA學習筆記-二分法排序(增強for循環)


package MyErFenPaiXu;

public class Mycode {

public static void main(String[] args){
  int[] a ={18,63,25,46,3,0,99,1,2};
  for(int j=0;j<a.length-1;j++){      //這里的意思為不斷的比較,次數只要不小於5次就能遍歷出想要的結果。
    for(int i=0;i<a.length-1-j;i++){   //遍歷一次,一個大數會被移到最后的位置。
      if(a[i]>a[i+1]){
        int temp=0;                         //這里是不斷拿一個數和它的第二數進行比較,第一個數>第二個,就把大數后移一個位置,中途借助temp來實現數據暫存的轉移。
        temp = a[i+1];
        a[i+1]=a[i];
        a[i]=temp;
      }
    }
}

  for(int k=0;k<a.length;k++){
    System.out.print(a[k]+"\t");
  }

}
}

以上為自己寫的排序小程序,但是jdk給我們提供了java.util工具類,包括排序數組,打印數組等等的方法。

 

數組復制:

public static void arraycopy(Object src,   //被復制的數組
             int srcPos,                   //被復制的數組位置索引
             Object dest,                  //復制到哪個數組
             int destPos,                  //復制到該數組的哪個索引
             int length)                   //復制的數組長度

 

數組填充:

Arrays.fill(a,2,4,100);   //將2到4索引的元素替換為100    替換都是包頭不包尾   [2,4)

排序數組:

int[] a ={18,63,25,46,3,0,99,1,2};

Arrays.sort(a);  //從小到大的順序進行排序。

打印數組:

Arrays.toString(a);     //個人感覺Arrays的toString和Object的toString應該是重載的關系???

 

 

遍歷數組的小方法!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM