1、如何插入一條新的資料項
2、如何尋找某一特定的資料項
3、如何刪除某一特定的資料項
4、如何迭代的訪問各個資料項,以便進行顯示或其他操作
常用的資料結構:
資料機構
優點缺點
陣列插入快
查詢慢、刪除慢,大小固定,只能儲存單一元素
有序陣列
比無序陣列查詢快
插入慢,刪除慢,大小固定,只能儲存單一元素
棧提供後進先出的訪問方式
訪問其他項很慢
佇列提供先進先出的訪問方式
訪問其他項很慢
鍊錶插入快,刪除快
查詢慢二叉樹
如果樹是平衡的,則查詢、刪除、插入都快
刪除演算法複雜
紅黑樹查詢、刪除、插入都快,樹總是平衡的
演算法複雜
2-3-4樹
查詢、刪除、插入都快,樹總是平衡的,類似的樹對磁碟儲存有效
演算法複雜
雜湊表如果關鍵字已知,則訪問快
刪除慢,如果不知道關鍵字則訪問慢,對訪問空間使用不充分
堆插入、刪除快,對最大資料項訪問快
對其他資料項訪問慢
圖對現實世界建模
有些演算法慢且複雜
程式對於幾組輸入資料能夠得出滿足需要的結果。
程式對於精心選擇的、典型、苛刻且帶有刁難性的幾組輸入資料能夠得出滿足要求的結果。
程式對於一切合法的輸入資料都能得到滿足要求的結果。
Java資料結構和演算法簡介
什麼是 資料結構?1.資料結構 對記憶體或者磁碟上資料的安排,也就是資料的組織形式。基本的資料結構包括陣列,鍊錶,棧,佇列,樹,雜湊表,圖,堆等。什麼是演算法?1.演算法 對資料結構中的資料進行處理的 方式或者過程,稱之為演算法,廣義的講,解決問題的方法。資料結構和演算法的關係 資料結構為演算法服務...
資料結構與演算法簡介
演算法簡介 一 資料結構與演算法的關係 雖然本門課程叫 資料結構 但經常會講到演算法,以及它們之間的關係。在市面上也經常有諸如 資料結構與演算法分析 這樣名字的書。實際上,資料結構與演算法是依存關係。只談資料結構而拋棄演算法,則資料是 死 的,沒有活力的 只談演算法而拋棄資料結構,則演算法無法有所依...
資料結構 02演算法簡介
一 資料結構與演算法的關係 雖然本門課程叫 資料結構 但經常會講到演算法,以及它們之間的關係。在市面上也經常有諸如 資料結構與演算法分析 這樣名字的書。實際上,資料結構與演算法是依存關係。只談資料結構而拋棄演算法,則資料是 死 的,沒有活力的 只談演算法而拋棄資料結 構,則演算法無法有所依賴的操作物...