1. 程式人生 > >數據結構和算法是為問題而生的

數據結構和算法是為問題而生的

算法 什麽 進行 處理 bsp 兩種 轉換 步驟 優化

之前討論數據結構和算法的本質時說,計算機中數據結構存儲僅兩種方案,一種是連續存儲的數組,一種是非連續存儲的鏈表。

算法對數據結構是強依賴,不同的數據結構產生不同的算法。

後續的非線性的數據結構樹、圖,都是基於數組和鏈表的擴展而得,它們是一種邏輯結構而非存儲結構。

而它們之所以產生,是因為單純的使用數組和鏈表沒法找到更高效的算法對復雜問題的數據進行處理。

這裏的復雜問題,就是數據結構和算法演進的根因。

解決一個問題的思路:

  1. 這個問題可以轉換為什麽樣數據結構來處理--------問題轉化

  2. 針對這種數據結構,有哪些高效的算法------問題解決

  3. 是否能夠通過不同數據結構和算法的組合,更好的處理這個問題------方法優化

所有問題的計算機解決,一定是經歷這三個步驟

數據結構和算法是為問題而生的