欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java之Algorithm_analysis案例詳解

 更新時間:2021年09月11日 10:50:33   作者:lxj_csdn  
這篇文章主要介紹了Java之Algorithm_analysis案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
/*
冒泡排序:雙層循環(huán)
1.外層循環(huán):控制排序輪數(shù),排序數(shù)組長度減1(最后一次循環(huán)只剩下一個元素,不需要比較,同時數(shù)組已完成排序。
 
2.內(nèi)層循環(huán):比較數(shù)組臨近元素大小,確定是否交換位置,對比和交換次數(shù)隨排序輪數(shù)而減少。
 */
public class BubbleSort {
    public void sort(int[] array){
        for(int i=1;i<array.length;i++){//控制輪數(shù)
            //比較相鄰兩個元素,較大的數(shù)往后冒泡
            for(int j=0;j<array.length-i;j++){//控制交換次數(shù)
                if(array[j]>array[j+1]){//第一個數(shù)大于第二個數(shù),進行交換
                    int temp = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                    System.out.println("第-------"+j+"-------次");
                }
                System.out.println("第"+i+"輪");
                showArray(array);
            }
        }
        showArray(array);
    }
    /*
    顯示數(shù)組
     */
    public void showArray(int[] array){
        for(int i:array){//遍歷數(shù)組
            System.out.print("  》"+i);
        }
        System.out.println();
    }
    public static void  main(String[] args) {
        //創(chuàng)建一個數(shù)組,這個數(shù)組元素是亂序的
        int[] array = {63,4,24,1,3,15};
        System.out.println("數(shù)組長度:"+array.length);
        System.out.println("=========================");
        //創(chuàng)建冒泡排序類對象
        BubbleSort sorter = new BubbleSort();
        //調(diào)用排序方法將數(shù)組排序
        sorter.sort(array);
    }

顯示結(jié)果

數(shù)組長度:6
=========================
第-------0-------次
第1輪
》4  》63  》24  》1  》3  》15
第-------1-------次
第1輪
》4  》24  》63  》1  》3  》15
第-------2-------次
第1輪
》4  》24  》1  》63  》3  》15
第-------3-------次
第1輪
》4  》24  》1  》3  》63  》15
第-------4-------次
第1輪
》4  》24  》1  》3  》15  》63
第2輪
》4  》24  》1  》3  》15  》63
第-------1-------次
第2輪
》4  》1  》24  》3  》15  》63
第-------2-------次
第2輪
》4  》1  》3  》24  》15  》63
第-------3-------次
第2輪
》4  》1  》3  》15  》24  》63
第-------0-------次
第3輪
》1  》4  》3  》15  》24  》63
第-------1-------次
第3輪
》1  》3  》4  》15  》24  》63
第3輪
》1  》3  》4  》15  》24  》63
第4輪
》1  》3  》4  》15  》24  》63
第4輪
》1  》3  》4  》15  》24  》63
第5輪
》1  》3  》4  》15  》24  》63
》1  》3  》4  》15  》24  》63

/*直接選擇排序:指定排序位置與其他元素比較。交換次數(shù)減少。*/

public class SelectSort {
    public void sort(int[] array) {
        int index;
        for (int i = 1; i < array.length; i++) {
            index = 0;
            for (int j = 1; j <= array.length - i; j++)
                if (array[j] > array[index]) {
                    index = j;
                }
            //交換位置array.length-i和index(最大值)上的兩個數(shù)
            int temp = array[array.length-i];
            array[array.length - i] = array[index];
            array[index] = temp;
        }
        showArray(array);
    }
    /*
    顯示數(shù)組
     */
    public void showArray(int[] array) {
        for (int i : array) {//遍歷數(shù)組
            System.out.print("  》" + i);
        }
        System.out.println();
    }
    public static void main(String[] args) {
        //創(chuàng)建一個數(shù)組,這個數(shù)組元素是亂序的
        int[] array = {63, 4, 24, 1, 3, 15};
        System.out.println("數(shù)組長度:" + array.length);
        System.out.println("=========================");
        //創(chuàng)建冒泡排序類對象
        SelectSort sorter = new SelectSort();
        //調(diào)用排序方法將數(shù)組排序
        sorter.sort(array);
    }
}

運行結(jié)果:

數(shù)組長度:6
=========================
》1  》3  》4  》15  》24  》63

到此這篇關(guān)于Java之Algorithm_analysis案例詳解的文章就介紹到這了,更多相關(guān)Java之Algorithm_analysis內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中用戶向系統(tǒng)傳遞參數(shù)的三種基本方式實例分享

    Java中用戶向系統(tǒng)傳遞參數(shù)的三種基本方式實例分享

    這篇文章主要介紹了Java中用戶向系統(tǒng)傳遞參數(shù)的三種基本方式實例,有需要的朋友可以參考一下
    2014-01-01
  • SpringAOP 設置注入的實現(xiàn)步驟

    SpringAOP 設置注入的實現(xiàn)步驟

    這篇文章主要介紹了SpringAOP 設置注入的實現(xiàn)步驟,幫助大家更好的理解和學習使用Spring框架,感興趣的朋友可以了解下
    2021-05-05
  • mybatis動態(tài)sql之新增與更新方式

    mybatis動態(tài)sql之新增與更新方式

    這篇文章主要介紹了mybatis動態(tài)sql之新增與更新方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • MyBatis-Plus MetaObjectHandler的原理及使用

    MyBatis-Plus MetaObjectHandler的原理及使用

    MyBatis-Plus的MetaObjectHandler接口允許開發(fā)者自動填充實體類字段,如創(chuàng)建時間、更新時間等公共字段,減少代碼重復,提高數(shù)據(jù)一致性和完整性,感興趣的可以了解一下
    2024-10-10
  • Java三個類加載器及它們的相互關(guān)系

    Java三個類加載器及它們的相互關(guān)系

    Java在需要使用類別的時候,才會將類別加載,Java的類別載入是由類別載入器(Class loader)來達到的,預設上,在程序啟動之后,主要會有三個類別加載器,文中詳細介紹了這三個類加載器,需要的朋友可以參考下
    2021-06-06
  • Java線程的創(chuàng)建介紹及實現(xiàn)方式示例

    Java線程的創(chuàng)建介紹及實現(xiàn)方式示例

    這篇文章主要為大家介紹了Java線程的創(chuàng)建介紹及實現(xiàn)方式示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • MyBatis圖文并茂講解注解開發(fā)多對多查詢

    MyBatis圖文并茂講解注解開發(fā)多對多查詢

    這篇文章主要介紹了SpringBoot中Mybatis注解多對多查詢的實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • Spring加載properties文件的兩種方式實例詳解

    Spring加載properties文件的兩種方式實例詳解

    這篇文章主要介紹了Spring加載properties文件的兩種方式,需要的朋友可以參考下
    2018-02-02
  • Java多線程 原子操作類詳細

    Java多線程 原子操作類詳細

    這篇文章主要介紹了Java多線程中的原子操作類,原子的本意是不能被分割的粒子,而對于一個操作來說,如果它是不可被中斷的一個或者一組操作,那么他就是原子操作。顯然,原子操作是安全的,因為它不會被打斷,需要的朋友可以參考下
    2021-10-10
  • 一篇文章帶你入門Java數(shù)據(jù)結(jié)構(gòu)

    一篇文章帶你入門Java數(shù)據(jù)結(jié)構(gòu)

    這篇文章主要介紹了Java常見數(shù)據(jù)結(jié)構(gòu)面試題,帶有答案及解釋,希望對廣大的程序愛好者有所幫助,同時祝大家有一個好成績,需要的朋友可以參考下,希望可以幫助到你
    2021-08-08

最新評論