java資料結構和演算法 1

2021-08-07 20:47:55 字數 1088 閱讀 2574

1. 資料結構是對在計算機記憶體(硬碟)中的資料的一種安排.

2. 資料結構包括陣列,鍊錶,棧,二叉樹,雜湊等.

3. 資料結構的特性:

陣列 (優點:插入快,如果知道下標,可以非常快的儲存.缺點:查詢慢,刪除慢,大小固定)

有序陣列 (優點:比無序陣列查詢快.缺點:查詢慢,刪除慢,大小固定)

棧 (優點:提供後進先出的訪問.缺點:訪問其他項很慢)

佇列 (優點:提供先進先出方式的訪問.缺點:訪問其他項很慢)

鍊錶 (優點:插入快,刪除快.缺點查詢慢)

二叉樹 (優點:查詢,插入,刪除都快(如果數保持平衡), 缺點:刪除演算法複雜)

紅-黑數 (優點: 查詢,插入,刪除都快.數總是平衡的. 缺點:演算法複雜)

2-3-4樹 (優點: 查詢,插入,刪除都快.數總是平衡的,類似的數對硬碟儲存有用. 缺點:演算法複雜)

雜湊表 (優點: 如果關鍵字已知則訪問極快.插入快 缺點:刪除慢,如果不知道關鍵字則訪問很慢,對儲存空間使用不

充分)

堆 (優點: 插入,刪除快,對最大資料項的訪問很快, 缺點:對其他資料項訪問慢)

圖 (優點: 對現實世界建模, 缺點: 有些演算法慢且複雜)

4. 資料結構出來陣列之外都被認為是抽象資料結構(adt)

陣列:

1.設資料有n個,則乙個資料項的的平均查詢的長度為n/2. 在最壞的情況下,待查的資料項在陣列的最後,則需要n步才能找到.

2.刪除演算法中暗含乙個假設,即陣列中不能有洞(空單元).如果有洞,演算法會要判斷非空資料而變得效率低.切記不能有空單元.

3. 刪除(假設資料不重複)查詢平均n/2個資料項並移動剩下的n/2個資料項來填充刪除而帶來的洞.總共是n步.

4. 如果允許重複,則通常查詢步數是n個,即全部查詢. 也可以在第一次匹配成功後就停止查詢.

5. 允許重複下的刪除需要檢查n個資料項和(可能)移動多於n/2個資料項.

6. 不管是否可以重複,插入資料只需一步.

Java資料結構和演算法 排序

馬上要找工作了,所以的把原來的重要的課程再回顧一下,我重要複習的是資料結構,在網上下了 1 i 交換陣列中的兩個數 param one param two public void swap int one,int two static long arr new long 20 隨機初始化乙個長度為2...

Java資料結構和演算法簡介

什麼是 資料結構?1.資料結構 對記憶體或者磁碟上資料的安排,也就是資料的組織形式。基本的資料結構包括陣列,鍊錶,棧,佇列,樹,雜湊表,圖,堆等。什麼是演算法?1.演算法 對資料結構中的資料進行處理的 方式或者過程,稱之為演算法,廣義的講,解決問題的方法。資料結構和演算法的關係 資料結構為演算法服務...

C語言資料結構1 資料結構和演算法

如果沒有接觸過資料結構這門課程,或者說只是單單聽過這個名詞。那麼在含義方面,資料結構對於我們來說是非常陌生的。在了解一門課程之前,我們總是要知道這門課程要學習什麼。在了解資料結構之前,我們需要知道什麼是資料。對於人類來說,一切可以讓我們獲取資訊的東西都是資料。我們可以通過乙個動物的叫聲判斷是什麼動物...