實現算法的思考路徑

原則

  1. 設計
  2. 實現
  3. 優化

設計

  1. 怎麼實現,經過註釋+僞代碼+畫圖的方式講明白,這個後期稍微修補能夠直接輸出爲文檔或測試用例
  2. 思路必須作到清晰,不清晰不動手
  3. 輸入、輸出、這個問題的背景是什麼,爲了解決什麼問題

實現

  1. 數據是否有序、規模多大、重複元素、取值範圍
  2. 空間上怎麼存儲(數據結構)、內存使用有沒有要求
  3. 需不須要是穩定的算法、輸入出錯(入參、全局變量、文件)、沒有輸出或多個輸出怎麼作

優化

  1. 算法是否能夠優化時間空間
  2. 函數、類、變量命名得更好
  3. 函數和類的職責夠不夠內聚
  4. 容易變化的位置可能在哪裏
相關文章
相關標籤/搜索