初學演演算法 | 陣列的基本操作

2023-01-04 18:00:20
演演算法專題
  • 時間複雜度
  • 資料結構的使用
  • 經典演演算法思想
  • 樹的概念與操作
  • 搜尋的實踐與應用
  • 動態規劃(一)
  • 綜合訓練

資料結構

集合、列表和陣列區分

陣列操作

1、讀取元素
(1)方式:存取索引(下標)來讀取,索引一般從0開始。
(2)過程:先在記憶體中為陣列申請一段連續的空間,並且會記下索引為0處的記憶體地址,之後由記下的索引為0處記憶體地址 + 索引值 = 目標元素的地址,即找到目標元素。
(3)時間複雜度:O(1)
 
2、查詢元素
(1)過程:從陣列開頭逐步向後查詢。如果陣列中的某個元素為目標元素,則停止查詢;否則繼續搜尋直到到達陣列的末尾。
(2)時間複雜度:O(N),N 為陣列的長度。
 
3、插入元素
(1)末尾插入
(2)首尾間插入用連結串列省時
4、刪除元素
(1)刪除掉陣列中的某個元素後,陣列中會留下空缺的位置,而陣列中的元素在記憶體中是連續的,這就使得後面的元素需對該位置進行填補操作。
(2)時間複雜度:O(N),N 為陣列的長度。
 
注:只考慮最壞情況的時間複雜度