在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何去實現并驗證一種歸并排序?

Android編程精選 ? 來源:編程學習總站 ? 作者:寫代碼的牛頓 ? 2021-06-23 14:29 ? 次閱讀

1、歸并排序原理

歸并排序的核心思想是:利用分治策略,不斷劃分子序列直到不能劃分為止,此時各個子序列是有序的,合并相鄰有序子序列最終得到一個有序序列。我們利用下圖解釋劃分子序列過程。

pYYBAGDS1Z2AIca3AAC9vaeaQVo244.jpg

現在有原始序列[5, 10, 6, 8, 15, 11, 10, 7]采用遞歸的方式不斷對序列進行劃分,最終劃分成單個元素的序列。 有序子序列合并過程如下圖所示:

pYYBAGDS1aiAZ8XiAAC-h-sJ9SI729.jpg

相鄰有序子序列進行合并,得到一個有序的序列。最終所有有序子序列進行合并得到一個完整的有序序列。

2、歸并排序實現

根據子序列合并過程圖我們可以看出,本質上就是兩個有序子序列進行合并成一個有序序列的過程。劃分的過程還是在原始序列里進行劃分,所以相鄰的序列必定有邊界進行劃分,現假設兩個相鄰子序列邊界分別是left、mid和right。其中left~mid構成一個子序列,mid+1~right構成另外一個子序列,兩個序列相鄰。合并代碼如下:

poYBAGDS1cmANTI2AAEyFIiJlFo669.jpg

每次將較小的值放在臨時緩沖區中,其中一個子序列遍歷完畢則退出循環,判斷兩個子序列是否都已遍歷完畢,將未遍歷完畢的子序列拷貝到臨時緩沖區中,最后將臨時緩沖區里的內容再復制到兩個子序列的所在區間,這樣兩個子序列合并完畢且有序,為了便于觀察合并過程,每進行一次歸并則打印歸并后的序列值。

歸并排序實現代碼如下:

poYBAGDS1d6ASkdaAAB41za6Ycw167.jpg

3、歸并排序算法驗證

下面我們寫一個小程序驗證算法的正確性。

poYBAGDS1giAFRDqAAC2bDqUKrw960.jpg

為了便于觀察,原始數據和圖解的一樣,現編譯運行輸出如下:

pYYBAGDS1hmAfW8cAABW_2v8nO0145.jpg

從輸出結果中,我們對照圖解歸并排序過程,完全符合。

責任編輯:lq6

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4808

    瀏覽量

    68812
  • 序列
    +關注

    關注

    0

    文章

    70

    瀏覽量

    19581

原文標題:圖解歸并排序

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    TimSort:個在標準函數庫中廣泛使用的排序算法

    排序算法呢? 本文將帶你走進 TimSort,個在標準函數庫中廣泛使用的排序算法。 這個算法由工程師 Tim Peters 于 2001 年專為 Python 設計,自 Pytho
    的頭像 發表于 01-03 11:42 ?97次閱讀

    一種實現寬電壓增益的改進型LLC-AHB變換器

    電子發燒友網站提供《一種實現寬電壓增益的改進型LLC-AHB變換器.pdf》資料免費下載
    發表于 12-16 14:39 ?0次下載

    一種創新的動態軌跡預測方法

    本文提出了一種動態軌跡預測方法,通過結合歷史幀和歷史預測結果來提高預測的穩定性和準確性。它引入了歷史預測注意力模塊,以編碼連續預測之間的動態關系,通過三重因子注意力模塊實現了最先進的性能。本方法能夠生成準確且穩定的未來軌跡,這
    的頭像 發表于 10-28 14:34 ?474次閱讀
    <b class='flag-5'>一種</b>創新的動態軌跡預測方法

    快速部署原型驗證:從子卡到調試的全方位優化

    引言原型驗證一種在FPGA平臺上驗證芯片設計的過程,通過在FPGA上實現芯片的設計原型,使得開發人員可以在硬件完成之前提前開始軟件開發和系統驗證
    的頭像 發表于 09-30 08:04 ?679次閱讀
    快速部署原型<b class='flag-5'>驗證</b>:從子卡到調試的全方位優化

    一種供電總線技術POWERBUS二總線

    首先給大家介紹一種總線技術Powerbus總線,特性: 1.總線可供電,通訊和供電無需電氣隔離 2.總線抗干擾能力強,可與市電走 3.可支持總線電流20A(2400bps) 4.具備總線短路保護
    發表于 07-23 13:38

    機器學習中的交叉驗證方法

    在機器學習中,交叉驗證(Cross-Validation)是一種重要的評估方法,它通過將數據集分割成多個部分來評估模型的性能,從而避免過擬合或欠擬合問題,幫助選擇最優的超參數。本文將詳細探討幾種
    的頭像 發表于 07-10 16:08 ?1312次閱讀

    rup是一種什么模型

    RUP(Rational Unified Process,統建模語言)是一種軟件開發過程模型,它是一種迭代和增量的軟件開發方法。RUP是由Rational Software公司(現為IBM的
    的頭像 發表于 07-09 10:13 ?1347次閱讀

    plc是一種什么的電子裝置

    PLC(Programmable Logic Controller,可編程邏輯控制器)是一種廣泛應用于工業自動化領域的電子裝置。它具有高度的靈活性和可靠性,能夠實現各種復雜的控制任務。本文將詳細介紹
    的頭像 發表于 06-13 09:29 ?1067次閱讀

    手把手教你排序算法怎么寫

    今天以直接插入排序算法,給大家分享一下排序算法的實現思路,主要包含以下部分內容:插入排序介紹插入排序算法
    的頭像 發表于 06-04 08:03 ?736次閱讀
    手把手教你<b class='flag-5'>排序</b>算法怎么寫

    光伏逆變器可以并排設置嗎?為什么?

    光伏逆變器的并排設置,也稱為逆變器的并聯運行,是指兩個或多個逆變器連接到同個直流源或交流電網中,共同承擔電能的轉換和供應任務。
    的頭像 發表于 04-18 17:19 ?2654次閱讀

    北京清微智能科技有限公司發布IC驗證新方法,實現雙DUT驗證

    清微智能在本周宣布新型專利“一種IC驗證實現雙DUT驗證的方法”已于今年3月獲批。該項專利內容由該集團獨立研究,申請日期優先于2024年3月26日。
    的頭像 發表于 04-08 10:07 ?601次閱讀
    北京清微智能科技有限公司發布IC<b class='flag-5'>驗證</b>新方法,<b class='flag-5'>實現</b>雙DUT<b class='flag-5'>驗證</b>

    用FPGA實現雙調排序的方法(2)

    典型的排序算法包括冒泡排序、選擇排序、插入排序歸并排序、快速排序、希爾
    的頭像 發表于 03-21 10:28 ?659次閱讀
    用FPGA<b class='flag-5'>實現</b>雙調<b class='flag-5'>排序</b>的方法(2)

    FPGA實現雙調排序算法的探索與實踐

    雙調排序(BitonicSort)是數據獨立(Data-independent)的排序算法,即比較順序與數據無關,特別適合并行執行。在了解雙調排序算法之前,我們先來看看什么是雙調序列。
    發表于 03-14 09:50 ?686次閱讀
    FPGA<b class='flag-5'>實現</b>雙調<b class='flag-5'>排序</b>算法的探索與實踐

    想聽聽48和大對數光纜的排序

    48芯光纜和大對數光纜都是光纜中的一種,它們的區別在于芯數不同。48芯光纜指的是光纜中包含48根光纖,而大對數光纜則是指光纜中芯數超過了48芯。 在實際的光纜應用中,不同芯數的光纜需要進行不同的排序
    的頭像 發表于 03-12 10:44 ?662次閱讀

    C語言實現經典排序算法概覽

    冒泡排序(英語:Bubble Sort)是一種簡單的排序算法。它重復地走訪過要排序的數列,次比較兩個元素,如果他們的順序(如從大到小、首字
    的頭像 發表于 02-25 12:27 ?468次閱讀
    C語言<b class='flag-5'>實現</b>經典<b class='flag-5'>排序</b>算法概覽
    主站蜘蛛池模板: 在线资源你懂的| 1024手机免费看片| 好吊色7777sao在线视频观看| 久久精品国产精品亚洲毛片 | 国模伊人| 免费一级特黄a| 婷婷亚洲五月| 欧美一卡2卡三卡四卡五卡| 国产毛片精品| 手机看片1024精品日韩| 国产成人91青青草原精品| 欧美日韩国产乱了伦| 四虎影院在线观看网站| 综合第一页| 日本一区视频在线观看| 欧美最猛黑人xxxx黑人猛交黄| 日日干天天草| 天天色天天草| 一级特黄aaa大片在线观看视频| 国产亚洲美女| 国内一级特黄女人精品片| 国产成人免费无庶挡视频| 亚洲小视频| 加勒比一木道|视频在线看| 黄频网| 日本videosgratis教师69| 亚洲综合激情另类专区| 一区二区三区在线观看视频| 69日本xxxxxxxxx56| 黄色在线| 35qao强力打造免费上线高清| 久久99热不卡精品免费观看| 国产免费久久精品99| 免费网站黄| 久久精品国产精品亚洲精品| 五月伊人婷婷| 色妞网| 日韩欧美不卡片| 日本成人黄色网址| 欧美行爱| 狠狠五月深爱婷婷网|