一、歸并排序算法介紹:
歸并排序(Merge sort)是建立在歸并操作上的一種(zhǒng)有效的排序算法。該算法是采用分治法(Divide and Conquer)的一個非常典型的應用。
作爲一種(zhǒng)典型的分而治之思想的算法應用,歸并排序的實現由兩(liǎng)種(zhǒng)方法:
1.自上而下的遞歸(所有遞歸的方法都(dōu)可以用叠代重寫,所以就(jiù)有了第 2 種(zhǒng)方法);
2.自下而上的叠代;
和選擇排序一樣,歸并排序的性能(néng)不受輸入數據的影響,但表現比選擇排序好(hǎo)的多,因爲始終都(dōu)是 O(nlogn) 的時(shí)間複雜度。代價是需要額外的内存空間。
二、歸并排序算法步驟:
1.申請空間,使其大小爲兩(liǎng)個已經(jīng)排序序列之和,該空間用來存放合并後(hòu)的序列;
2.設定兩(liǎng)個指針,最初位置分别爲兩(liǎng)個已經(jīng)排序序列的起(qǐ)始位置;
3.比較兩(liǎng)個指針所指向(xiàng)的元素,選擇相對(duì)小的元素放入到合并空間,并移動指針到下一位置;
4.重複步驟 3 直到某一指針達到序列尾;
5.將(jiāng)另一序列剩下的所有元素直接複制到合并序列尾。
三、歸并排序算法可視化演示:
四、歸并排序算法實例解析(信息學(xué)奧賽一本通例題)
上一篇:沒(méi)有了
走過(guò)十六年曆程的互聯網整合營銷機構,以技術與思想,提升您網站的廣度傳播與深度。
咨詢問題或預約面(miàn)談,可以通過(guò)以下方式聯系我們。
淄博企業網站建設淄博手機網站建設響應式網站建設營銷型網站建設淄博高端網站建設電子商務網站建設商城購物網站建設淄博大型網站開(kāi)發(fā)淄博門戶網站建設淄博行業網站建設品牌創意網站建設淄博房産網站建設
16年網絡服務經(jīng)驗專業網站建設團隊資深行業分析策劃完備的項目管理突出技術研發(fā)能(néng)力完善售後(hòu)服務體系豐富網絡運營經(jīng)驗前沿視覺設計能(néng)力獨立項目開(kāi)發(fā)能(néng)力服務行業超100+品牌與技術并重高端網站建設者