數據結構--如何判斷一個算法的好壞


  • 如果單從執行效率上進行評估,可能會想到這么一種方案

    • 比較不同算法對同一組輸入的執行處理時間
    • 這種方案也叫做:事后統計法
  • 上述方案有比較明顯的缺點

    • 執行時間嚴重依賴硬件以及運行時各種不確定的環境因素
    • 必須編寫相應的測算代碼
    • 測試數據的選擇比較難保證公正性
  • 一般從以下維度來評估算法的優劣

    • 正確性、可讀性、健壯性(對不合理輸入的反應能力和處理能力)
    • 時間復雜度(time complexity):估算程序指令的執行次數(執行時間)
    • 空間復雜度(space complexity):估算所需占用的存儲空間

一個算法要好,執行次數越少,所占用的存儲空間越小,也就是說時間復雜度要低,空間復雜度也要低。


免責聲明!

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



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