資料結構 陣列 python

2021-08-28 20:28:29 字數 432 閱讀 2130

陣列是一組線性資料表結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。

1    陣列,鍊錶、佇列、棧  線性資料結構。

二叉樹、堆、圖等。之所以叫非線性。

2   第二個是連續的記憶體空間和相同型別的資料

3鍊錶適合插入、刪除,時間複雜度 o(1);陣列適合查詢,查詢時間複雜度為 o(1) 表述不準確

4正確的表述應該是,陣列支援隨機訪問,根據下標隨機訪問的時間複雜度為 o(1)

問題1:

如果要在某個位置插入資料 考慮到k位以後的結構不變的話 k-k+nzhen整體往後移動一位那麼時間複雜度是o(n);

如果不考慮位置的變化 我們可以把k位置的資料放在最後一位k位置填充要插入的資料那麼時間複雜度是o(1);

問題2:為什麼資料開始的地方不是1而是0呢?

其實這個下標指的是偏移量而不是位置。

資料結構 陣列

建立陣列 大小為50 棧空間存myarray引用 堆空間存乙個大小為50,預設值為0的陣列。棧空間myarray引用指向堆空間該陣列。int myarray new int 50 public class testarray public class testarray if s intarray....

資料結構 陣列

陣列 就是相同型別的資料按一定順序排列的集合,把有限個型別相同的資料元素用乙個名字表示,通過編號來區分。名字即為陣列名,編號即為下標。陣列是最簡單 使用最廣泛的一種資料結構,其實就是一塊連續的記憶體,哪怕物理上不連續,邏輯上也是連續的,連續存放著一組相同型別資料元素。陣列的定義 type 變數名 n...

資料結構 陣列

陣列 陣列是一種佔據連續記憶體並按順序儲存資料的簡單的資料結構。建立陣列時,需要首先指定陣列的容量,然後依據大小分配記憶體。由於有時候我們需要使用陣列的容量不確定,可能開闢的記憶體遠超實際使用的記憶體,所以陣列的空間效率不好。由於陣列在記憶體中是連續的儲存空間,所以它的時間效率很高,可以在o 1 的...