1.數(shù)據(jù)結構的定義
-
數(shù)據(jù)對象
闯传,以及存在于該對象的實例
和組成實例的數(shù)據(jù)元素
之間的各種聯(lián)系。這些聯(lián)系通過定義相關函數(shù)
來給出卤妒。 - ADT(Abstract Data Type)
抽象數(shù)據(jù)類型
的物理實現(xiàn)甥绿。 - 計算機中
存儲、組織數(shù)據(jù)
的方式则披。通常情況下共缕,精心選擇的數(shù)據(jù)結構可以帶來最有效率的算法
。----維基百科
2.數(shù)據(jù)結構的場景
圖書館排列書籍
- 方法一:隨便放
插入:哪里有空位放哪里
查找:太累... - 方法二:按拼音排序
插入:麻煩...
查找:二分法查找 - 方法三:分類按拼音/ 字母排序
插入:找類別士复,二分法图谷,查詢空位插入
查找:找類別,二分法
解決方法的效率阱洪,跟數(shù)據(jù)的組織方式有關
算法
不同的函數(shù)算法不同便贵,效率不同。
當函數(shù)呈現(xiàn)效果不明顯時冗荸,可以通過將同個函數(shù)運行多次來看效果
解決方法的效率承璃,跟算法的巧妙程度有關
3.數(shù)據(jù)結構的總結
數(shù)據(jù)對象
在計算機中的組織方式:
- 邏輯結構:分為線性結構,樹形結構
- 物理存儲結構(eg:數(shù)組蚌本,鏈表盔粹?)
數(shù)據(jù)對象必定與一系列加在其上的操作
相關聯(lián)
完成這些操作所用的方法就是算法