資料結構 陣列

2021-09-30 16:44:30 字數 722 閱讀 1812

是由型別相同的資料元素構成的有序集合

二維陣列a[m][n]以一維方式儲存時按位置查詢

首元為a[0][0]時      以行儲存  loc(i,j)=loc(0,0)+(n*i+j)l

以列儲存  loc(i,j)=loc(0,0)+(m*j+i)l

首元為a[1][1]時      以行儲存 loc(i,j)=loc(1,1)+(n*(i-1)+(j-1))l

以行儲存 loc(i,j)=loc(1,1)+(n*(j-1)+(i-1))l        

矩陣從[0][0]開始   一維儲存從[0]開始  ps:一旦前提條件更改公式就可能不適用

1)對稱矩陣

轉換為一維的儲存空間為   n(n-1)/2

行序儲存

k=i(i+1)/2+j    (i>=j)

k=j(j+1)/2+i    (j>i)

2)三角矩陣

轉換為一維的儲存空間為   n(n-1)/2+1

行序儲存  存上三角

k=i(2*n+1-i)/2+j-i   (i>=j)

k=n(n+1)/2   (j>i)

行序儲存  存下三角

k=i(i+1)/2+j    (i>=j)

k=n(n+1)/2     (j>i)

3)對角矩陣

轉換為一維的儲存空間為   3*n-2+1

行序儲存 k=3*i-1+j-(i-1)=2*i-j 

資料結構 陣列

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

資料結構 陣列

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

資料結構 陣列

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