資料結構和演算法是計算機處理資訊的基礎。
拋開所有的東西都不看的話,計算機做的事情就是儲存,然後計算。資料結構解決儲存的問題,一些演算法解決計算的問題,所以程式設計師必須要了解必須使用資料結構和演算法。
比如 Java 中的集合,連結串列,變數定義都是解決儲存的問題,這個儲存的定義不是硬體中的儲存,而是儲存在記憶體中的資料結構。
你的方法也好,演算法也好,必須要拿到資料才能計算,怎麼算,這個就是演算法。
舉個最簡單的栗子,讀取 CSV 檔案,存入到資料庫中。抽象來說就是先把 CSV 檔案讀取到記憶體中,存好。存成什麼樣的?你可以存為字串,也可以進一步存為 List,也可以是 Set。
拿到這個資料後,再進行計算,有可能是去重,分組,遍歷等等。這些就是演算法了。
不僅僅是應付面試,程式設計師也好,技術研究也好,資料結構和演算法是基礎。這 2 樣最好是需要比較熟練的掌握,哪怕是不能馬上找到解決方案,至少能提供一個思路。
這個對取得面試成功會是個加分項。
最新評論