【Java基礎】--演算法與陣列

ZeroWM發表於2015-09-15


前言

陣列就是一堆資料型別相同的數按照一定的順序排列的集合。陣列就像標號的盒子,一排的就是一維陣列,多排的就是二維陣列。陣列方便的資料的存取和查詢。




演算法

原陣列:5,8,7,2,9


冒泡法:

相鄰兩個數比較大小,交換,最終找到最大值。



選擇排序:

從現有序列裡面找最小,放到起始位置。



在Java中的具體應用:

<span style="font-size:14px;">public class NumSort{
    public static void main(String[] args){
        int [] a=new int [args.length];
        for(int i =0;i<args.length;i++){
            a[i]=    Integer.parseInt(args[i]);
        }
        print(a);
        selectionSort(a);
        print(a);
            
    }
    
    public static void  selectionSort(int [] a){
        //氣泡排序
        
        int temp = 0;
        for (int i = a.length - 1; i > 0; --i)
        {
            for (int j = 0; j < i; ++j)
            {
                if (a[j + 1] < a[j])
                {
                    temp = a[j];
                    a[j] = a[j + 1];
                    a[j + 1] = temp;
                }
            }
        }
        
        //選擇排序
        // int k ,temp;
        // for(int i=0;i<a.length;i++){
            // k=i;
            // for(int j=k+1;j<a.length;j++){
                // if(a[j]<a[k]){
                    // k=j;
                // }
            // }
            
            // if(k!=i){
                // temp=a[i];
                // a[i]=a[k];
                // a[k]=temp;
            // }
        //}
    }
    private static void print(int[] a){
        for(int i=0;i<a.length;i++){
            System.out.print(a[i] + " ");
        
        }
            System.out.println();
            
    }
    
}</span>


執行結果:




總結

演算法要一步一步的在紙上寫一遍,然後單步除錯完整走一遍,就不會那麼暈了。我相信,並持續相信,我的程式設計會學的特別棒的。



相關文章