兩個升序鏈表合並為降序鏈表


---

兩個升序鏈表合並為降序鏈表

原文:https://blog.csdn.net/calculate23/article/details/97490628

image-20210405163114682

---注意算法中單次比較中大的一方下標不變,以此實現兩兩比較---

看了原文解釋后個人理解如下,問題的求解無非兩步:

求時間復雜度的步驟:

  1. 考慮最壞情況下的執行次數,例如

    l1: 1 3 5 7 9 (m=5)

    l2: 2 4 6 (n=3)

    數字穿插在兩個鏈表中,需要比較m+n-1次

    (第一次:1和2比,1按頭插法插入鏈表l3,繼續;

    ​ 第二次:2和3比,2插入l3,以此類推...

    ​ 當鏈表l2走完后l1中剩余的7,9直接插入l3)

  2. 根據此執行次數得到對應的時間復雜度

    注意:時間復雜度不等於具體的執行步數,其作用是用來反映執行時間的數量級

    所以由加法規則可知:

    O(m+n-1)=O(max(m,n))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM