資料結構與演算法之陣列

2021-10-04 04:03:50 字數 1256 閱讀 3898

1、陣列的定義:陣列是相同型別資料的有序集合。他描述的是相同型別的若干個資料,按照一定先後順序排列組合而成,當中每乙個資料稱為元素,要訪問元素可以通過他的索引(下標去訪問他)。

2、陣列的幾個基本要素:

(1)、陣列一旦被建立,其大小是不可以改變的,也就是長度是確定的

(2)、元素型別是相同型別

(3)、陣列型別可以是任何資料型別,包括基本資料型別和引用型別

(4)、元素在堆記憶體中被分配空間,並且是連續的

(5)、陣列的元素是有序的,序號從0開始,這個就是我們常說的下標、索引。

(6)、使用new關鍵是建立陣列是也就是在為他分配記憶體空間

3、陣列的優缺點:

優點:

(1)、可以儲存若干個資料

(2)、元素連續分配空間,隨機元素的效率很高,

缺點:

(1)、陣列的長度是固定的,不能隨意自動擴容

(2)、陣列沒有封裝,陣列物件只提供了乙個陣列的長度的屬性

(3)、刪除、插入元素的效率低,需要移動大量元素才可以實現

(4)、根據內容查詢元素時效力比較低,要逐個比較才能實現

(5)、陣列中的元素型別必須一致

(6)、在堆中需要連續分配空間,元素較多時,不好管理

4、陣列的定義:

格式1:

元素型別 陣列名 = new 元素型別[元素個數或陣列長度];

示例:int arr = new int[5];

格式2:

元素型別 陣列名 = new 元素型別;

int arr = new int;

int arr = ;

5、陣列中常見的異常

在陣列中常見的異常大致也就是兩種:nullpointerexception 空指標異常、arrayindexoutofbound***ception 索引值越界

6、二維陣列

二維陣列實質就是儲存一維陣列,其定義是  陣列型別 陣列名 = new 陣列型別[一維陣列的個數][每乙個一維陣列中元素的個數];如:int a = new int[3][4];

arrays的使用,遍歷:tostring(),將陣列元素以字串的形式返回;排序:sort(),將陣列按照公升序排列。

資料結構與演算法之陣列

陣列的基本概念 陣列是最簡單最常用的資料結構,但是也有一些注意事項 1 陣列的分配方式以及儲存位置 2 初始化 3 不同語言中的陣列高階定義 4 多維陣列 c c 中陣列分配方式 1 int a 10 適用於陣列長度已知或者對陣列長度不敏感的情況,比如定義乙個字串。2 int a int mallo...

基本資料結構與演算法 之陣列

1.mxn的矩陣,若某個元素值為0,則將其所在的行和列全置為0。定義行陣列rows,列陣列cols。如果a i j 為0,則將rows i 和cols j 置為true。當遍歷完整個a陣列後,根據rows和cols的值對矩陣進行修改。2.陣列a,將a 0 a p 和a p 1 a n 1 這兩段交換...

資料結構與演算法之美 4 陣列

陣列 array 是一種線性表資料結構。它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。在面試的時候,面試官常常會問陣列和鍊錶的區別,很多人都回答說,鍊錶適合插入 刪除,時間複雜度 o 1 陣列適合查詢,查詢時間複雜度為 o 1 實際上,這種表述是不準確的。陣列是適合查詢操作,但是查詢的時間...