- Python數據結構與算法(視頻教學版)
- 孫玉勝 陳銳 張志鋒
- 548字
- 2023-07-17 20:02:18
1.5.1 數據結構與算法的關系
算法與數據結構關系密切。兩者既有聯系又有區別。數據結構與算法的聯系可用如下公式描述:
程序=算法+數據結構
數據結構是算法實現的基礎,算法依賴于某種數據結構才能實現。算法的操作對象是數據結構。算法的設計和選擇要同時結合數據結構,只有確定了數據的存儲方式和描述方式,即數據結構確定了之后,算法才能確定,例如,在列表和鏈表中查找元素值的具體算法實現是不同。算法設計的實質就是對實際問題要處理的數據選擇一種恰當的存儲結構,并在選定的存儲結構上設計一個好的算法。
數據結構是算法設計的基礎。比如你要裝修房子,裝修房子的設計就相當于算法設計,而如何裝修房子是要看房子的結構設計。不同的房間結構,其裝修設計是不同的,只有確定了房間結構,我們才能進行房間的裝修設計。房間的結構就像數據結構。算法設計必須考慮到數據結構的構造,算法設計是不可能獨立于數據結構而存在的。數據結構的設計和選擇需要為算法服務,根據數據結構及特點,才能設計出好的算法。
數據結構與算法相輔相成,不是相互孤立存在的。數據結構關注的是數據的邏輯結構、存儲結構以及基本操作,而算法更多的是關注如何在數據結構的基礎上怎樣設計解決實際問題的方法。算法是編程思想,數據結構則是為了算法實現方便而提供存儲結構及基本操作,是算法設計的基礎。
推薦閱讀
- Visual C++程序設計教程
- Access 數據庫應用教程
- 青少年美育趣味課堂:XMind思維導圖制作
- Animate CC二維動畫設計與制作(微課版)
- 假如C語言是我發明的:講給孩子聽的大師編程課
- QGIS:Becoming a GIS Power User
- Java程序設計:原理與范例
- SQL Server 2016數據庫應用與開發
- Java語言程序設計教程
- 零基礎學HTML+CSS
- Android應用開發實戰(第2版)
- Node.js區塊鏈開發
- 官方 Scratch 3.0 編程趣味卡:讓孩子們愛上編程(全彩)
- Dart:Scalable Application Development
- HTML5/CSS3/JavaScript技術大全