最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java數(shù)據(jù)結(jié)構(gòu)之插入排序

 更新時(shí)間:2017年11月09日 16:40:09   作者:阿木俠  
這篇文章主要為大家詳細(xì)介紹了java數(shù)據(jù)結(jié)構(gòu)之插入排序的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

插入排序就是把當(dāng)前待排序的元素插入到一個(gè)已經(jīng)排好序的列表里面。 一個(gè)非常形象的例子就是右手抓取一張撲克牌,并把它插入左手拿著的排好序的撲克里面。

         插入排序的最壞運(yùn)行時(shí)間是O(n2), 所以并不是最優(yōu)的排序算法。

         如果輸入數(shù)組已經(jīng)是排好序的話,插入排序出現(xiàn)最佳情況,其運(yùn)行時(shí)間是輸入規(guī)模的一個(gè)線性函數(shù)。

         如果輸入數(shù)組是逆序排列的,將出現(xiàn)最壞情況。平均情況與最壞情況一樣,其時(shí)間代價(jià)是Θ(n2)。

簡單例子:

public class Demo6 { 
   
  public static void main(String[] args) {  
    //定義一個(gè)整型數(shù)組  
    int[] nums = new int[]{4,3,-1,9,2,1,8,0,6};  
    //打印沒有進(jìn)行排序的數(shù)組  
    System.out.println("沒有排序之前的結(jié)果:" + Arrays.toString(nums));  
    for(int index=0; index<nums.length; index++) {  
     //獲得需要插入的數(shù)值  
     int key = nums[index];  
     //取得下標(biāo)值  
     int position = index;  
      /循環(huán)比較之前排序好的數(shù)據(jù),找到合適的地方插入  
     while(position >0 && nums[position-1] > key) {  
      nums[position] = nums[position-1];  
      position--;  
     }  
     nums[position] = key;  
    }  
    //打印排序后的結(jié)果  
    System.out.println("排序后的結(jié)果:" + Arrays.toString(nums));  
   }  
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java自定義注解的詳解

    Java自定義注解的詳解

    這篇文章主要介紹了Java自定義注解的詳解的相關(guān)資料,Java注解提供了關(guān)于代碼的一些信息,但并不直接作用于它所注解的代碼內(nèi)容,需要的朋友可以參考下
    2017-08-08
  • IDEA最新激活碼2021(IDEA2020.3.2最新永久激活方法)

    IDEA最新激活碼2021(IDEA2020.3.2最新永久激活方法)

    這篇文章主要介紹了IDEA最新激活碼2021(IDEA2020.3.2最新永久激活方法),本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Java多線程之Semaphore實(shí)現(xiàn)信號(hào)燈

    Java多線程之Semaphore實(shí)現(xiàn)信號(hào)燈

    這篇文章主要給大家分享的是Java多線程之Semaphore實(shí)現(xiàn)信號(hào)燈的練習(xí),emaphore是計(jì)數(shù)信號(hào)量。Semaphore管理一系列許可證。每個(gè)acquire方法阻塞,直到有一個(gè)許可證可以獲得然后拿走一個(gè)許可證;下面一起進(jìn)入文章學(xué)習(xí)Semaphore的具體內(nèi)容
    2021-10-10
  • 深入理解Java設(shè)計(jì)模式之裝飾模式

    深入理解Java設(shè)計(jì)模式之裝飾模式

    這篇文章主要介紹了JAVA設(shè)計(jì)模式之裝飾模式的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2021-11-11
  • springBoot 打war包 程序包c(diǎn)om.sun.istack.internal不存在的問題及解決方案

    springBoot 打war包 程序包c(diǎn)om.sun.istack.internal不存在的問題及解決方案

    這篇文章主要介紹了springBoot 打war包 程序包c(diǎn)om.sun.istack.internal不存在的問題及解決方案,親測試過可以,需要的朋友可以參考下
    2018-07-07
  • SpringBoot或SpringAI對接DeepSeek大模型的詳細(xì)步驟

    SpringBoot或SpringAI對接DeepSeek大模型的詳細(xì)步驟

    這篇文章主要介紹了DeepSeek智能助手的使用方法和步驟,包括引入庫、配置環(huán)境變量和配置,文章詳細(xì)描述了流式請求和非流式請求的實(shí)現(xiàn)方式,需要的朋友可以參考下
    2025-02-02
  • Java調(diào)用瀏覽器打開網(wǎng)頁完整實(shí)例

    Java調(diào)用瀏覽器打開網(wǎng)頁完整實(shí)例

    這篇文章主要介紹了Java調(diào)用瀏覽器打開網(wǎng)頁的方法,以完整實(shí)例形式分析了java打開網(wǎng)頁的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • 使用Java實(shí)現(xiàn)獲取文件MD5值工具類

    使用Java實(shí)現(xiàn)獲取文件MD5值工具類

    我們在工作中通常使用MD5對文件進(jìn)行校驗(yàn)完整性,比較,提高安全性等,這篇文章主要為大家詳細(xì)介紹了Java如何編寫一個(gè)實(shí)現(xiàn)獲取文件MD5值的工具,需要的可以參考下
    2023-12-12
  • SpringBoot啟動(dòng)后的初始化數(shù)據(jù)加載原理解析與實(shí)戰(zhàn)

    SpringBoot啟動(dòng)后的初始化數(shù)據(jù)加載原理解析與實(shí)戰(zhàn)

    本文主要圍繞?Spring?Boot?啟動(dòng)后的初始化數(shù)據(jù)加載展開,介紹了初始化任務(wù)的基本需求,包括全局配置加載、數(shù)據(jù)庫表初始化等,闡述了多種初始化加載方式,分析了它們的優(yōu)缺點(diǎn),需要的朋友可以參考下
    2024-11-11
  • 如何解決Spring的UnsatisfiedDependencyException異常問題

    如何解決Spring的UnsatisfiedDependencyException異常問題

    這篇文章主要介紹了如何解決Spring的UnsatisfiedDependencyException異常問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04

最新評論

武威市| 兴宁市| 海城市| 望谟县| 武威市| 延长县| 尖扎县| 墨江| 清流县| 双流县| 宁陵县| 上虞市| 湖口县| 宁阳县| 云南省| 马关县| 上林县| 黄冈市| 宁城县| 剑阁县| 信丰县| 营山县| 德惠市| 新津县| 满城县| 无棣县| 白水县| 吉安县| 眉山市| 临夏市| 塘沽区| 乾安县| 普定县| 宁夏| 黔西| 桐柏县| 南木林县| 云安县| 兰州市| 荣昌县| 如东县|