數據結構和算法關系


數據結構:數據與數據之間的結構關系(數組、隊列、樹、圖等結構)

算法:解決問題的步驟

總結:

1、程序 = 數據結構 + 算法 。數據是程序的中心。數據結構和算法兩個概念間的邏輯關系貫穿了整個程序世界,首先二者表現為不可分割的關系。沒有數據間的有機關系,程序根本無法設計。

2、數據結構與算法關系:數據結構是底層,算法高層。數據結構為算法提供服務。算法圍繞數據結構操作。

3、解決問題(算法)需要選擇正確的數據結構。例如:算法中經常需要對數據進行增加和刪除用鏈表數據結構效率高,數組數據結構因為增加和刪除需要移動數字每個元素所有效率低。

4、數據結構特點:每種數據結構都具有自己的特點。例如:隊列:先進先出。棧:先進后出。等等

5、算法的特性:算法具有五個基本特征:輸入、輸出、有窮性、確定性和可行性。

6、數據結構應用:數據結構往往同高效的檢索算法、索引技術、排序算法有關

7、數據結構(邏輯數據結構)通過計算機語言來實現數據結構(存儲數據結構)。例如:樹型數據結構:通過計算機語言中的數組(節點)和指針(指向父節點)來實現。

8、存儲結構:邏輯數據結構的實現。存儲結構通過計算機語言實現。  例如:堆數據結構,堆是一棵完全二叉樹,所以適宜采用順序存儲結構(順序存儲:數組),這樣能夠充分利用存儲空間。

9、算法目的:算法是為數據結構服務。例如:數據結構通常伴隨有查找算法、排序算法等

10、數據結構的優劣:一種數據結構的優劣是在實現其各種運算的算法中體現的。

 

二、數據結構:分為邏輯數據結構和存儲數據結構兩種
(1)順序存儲方法(順序存儲結構) 
(2)鏈接存儲方法(鏈式存儲結構) 
同一種邏輯結構可采用不同的存儲方法(以上兩種之一或組合),這主要考慮的是運算方便及算法的時空要求。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM