數據結構=邏輯結構+存儲結構+運算/操作
數據的邏輯結構
邏輯結構指元素之間的邏輯關係(與實現無關)
線性結構(一對一):
線性表、棧、隊列、串及數組
非線性結構:
樹形結構(一對多)、圖形結構(多對多)、集合關係(唯一、無序、確定)
數據的存儲結構
順序結構(數組)
優點:
節省存儲空間,分配的空間全部
缺點:
插入、刪除效率低;
需要提前分配空間,可能會導致空間浪費
鏈式結構(鏈表)
優點:插入、刪除靈活;不需要空閒的節點;
缺點:查找結點時效率慢;
索引結構
如:字典的目錄;
佔部分空間,效率得以提升。
散列結構(hash存儲)
添加、查詢速度快
數據的運算
檢索、排序、插入、刪除、修改等。
補充
邏輯結構唯一,存儲結構不唯一,運算的實現依賴於存儲結構