資料結構與演算法07 陣列

2021-10-21 19:30:34 字數 516 閱讀 9028

1、陣列是什麼

(1)陣列是資料結構最基本結構,可以看成是線性表推廣。

(2)幾乎所有程式語言都把陣列設定成基礎固定的基礎變數型別。

2、陣列結構

陣列在記憶體中是連續存放,並且儲存資料的記憶體也是連續的,可通過索引值直接訪問。

3、陣列基本操作

由陣列的儲存結構可知,陣列具有查詢遍歷,增刪困難的特點。

陣列新增兩種情況:

(1)在最後乙個元素後新增。此時對原陣列沒有任何影響(除了長度),因此時間複雜度為o(1)。

(2)在陣列中間的位置進行新增操作,此時插入位置中的原陣列的陣列需要依次後移一位。因為時間複雜度o(n)。

陣列刪除操作類似↑。

陣列的查詢操作分為兩種:

(1)基於資料位置的查詢:直接利用陣列的索引進行查詢即可。

(2)基於數值查詢:這種查詢方法陣列就沒什麼優勢了。

擴充套件:arraylist是動態陣列

python演算法與資料結構 07查詢

1.遞迴版本 def binarysearch1 alist,item 二分查詢前提 有序陣列 二分查詢遞迴版本 時間複雜度 o logn n len alist if0 n return false mid n 2if alist mid item return true elif alist m...

《資料結構與演算法之美》07 遞迴

一 如何理解 遞迴 遞迴是一種應用非常廣泛的演算法 或者程式設計技巧 二 遞迴的三個條件 1 乙個問題的解可以分解為幾個子問題的解 2 這個問題與分解之後的子問題,除了資料規模不同,求解思路完全一樣 3 存在遞迴終止條件 三 如何編寫遞迴 寫遞迴 最關鍵的是 找到如何將大問題分解為小問題的規律,並且...

資料結構07

樹型結構 1 樹的基本概念 一種表示層次關係的 一對多 資料結構。有且僅有乙個特定的節點,該節點沒有前驅,被稱為根節點。剩餘的n個互不相交的子集,其中每個子集也都是一棵樹,被稱為根節點的子樹。注意 樹型結構具有遞迴性 樹中有樹 2 樹的表示方法 倒懸樹 巢狀法 凹凸法。3 樹的專業術語 節點 組成樹...