實現算法的思考路徑
原則
- 設計
- 實現
- 優化
設計
- 怎麼實現,經過註釋+僞代碼+畫圖的方式講明白,這個後期稍微修補能夠直接輸出爲文檔或測試用例
- 思路必須作到清晰,不清晰不動手
- 輸入、輸出、這個問題的背景是什麼,爲了解決什麼問題
實現
- 數據是否有序、規模多大、重複元素、取值範圍
- 空間上怎麼存儲(數據結構)、內存使用有沒有要求
- 需不須要是穩定的算法、輸入出錯(入參、全局變量、文件)、沒有輸出或多個輸出怎麼作
優化
- 算法是否能夠優化時間空間
- 函數、類、變量命名得更好
- 函數和類的職責夠不夠內聚
- 容易變化的位置可能在哪裏
歡迎關注本站公眾號,獲取更多信息