???? 關於多維資料的儲存有一些公式需要記憶,其實可以很容易推理出來,但是感覺有時候腦子不知道怎麼那麼笨,容易一下子就走神,記錄一下.
特殊矩陣
??? 所謂特殊矩陣是指非零元素或零元素的分布有一定規律的矩陣。常見的有對稱矩陣、三角矩陣和對角矩陣等。
②元素aij的存放位置
??? aij元素前有i行(從第0行到第i-1行),一共有:
???????? 1+2+…+i=i?(i+1)/2個元素;
??? 在第i行上,aij之前恰有j個元素(即ai0,ail,…,ai,j-1),因此有:
?????????? sa[i?(i+1)/2+j]= aij?
③aij和sa[k]之間的對應關係:
??? 若i≥j,k=i?(i+1)/2+j?? 0≤k(3)對稱矩陣的位址計算公式
? loc(aij)=loc(sa[k])
????????? =loc(sa[0])+k?d=loc(sa[0])+[i?(i+1)/2+j]?d
??? 通過下標變換公式,能立即找到矩陣元素aij在其壓縮儲存表示sa中的對應位置k。因此是隨機訪問結構。
? 【例】a21和a12均儲存在sa[4]中,這是因為
?????????? k=i?(i+1)/2+j=2?(2+1)/2+1=4
2、三角矩陣??
(1)三角矩陣的劃分
??? 以主對角線劃分,三角矩陣有上三角矩陣和下三角矩陣兩種。
①上三角矩陣
??? 如下圖(a)所示,它的下三角(不包括主角線)中的元素均為常數c。
②下三角矩陣
??? 與上三角矩陣相反,它的主對角線上方均為常數c,如下圖(b)所示。
? 注意:
??? 在多數情況下,三角矩陣的常數c為零。
(2)三角矩陣的壓縮儲存
??? 三角矩陣中的重複元素c可共享乙個儲存空間,其餘的元素正好有n?(n+1)/2個,因此,三角矩陣可壓縮儲存到向量sa[0..n(n+1)/2]中,其中c存放在向量的最後乙個分量中。
??
① 上三角矩陣中aij和sa[k]之間的對應關係
??? 上三角矩陣中,主對角線之上的第p行(0≤pij時:
???? aij元素前有i行(從第0行到第i-1行),一共有:
??????? (n-0)+(n-1)+(n-2)+…+(n-i)=i?(2n-i+1)/2個元素;
??? 在第i行上,aij之前恰有j-i個元素(即aij,ai,j+l,…,ai,j-1),因此有:
????????? sa[i?(2n-i+1)/2+j-i]= aij?
所以:? ? ?┌i?(2n-i+1)/2+j-i 當i≤j
?? k=│
????? └n?(n+1)/2 當i>j
②下三角矩陣中aij和sa[k]之間的對應關係
?? ? ┌i?(i+1)/2+j 當i≥j
?? k=│
??? └n?(n+1)/2 當i<j
? 注意:
??? 三角矩陣的壓縮儲存結構是隨機訪問結構。
3.對角矩陣
???所有的非零元素集中在以主對角線為中心的帶狀區域中,即除了主對角線和主對角線相鄰兩側的若干條對角線上的元素之外,其餘元素皆為零的矩陣為對角矩陣。
【例】下圖給出了乙個三對角矩陣。
???????????
???? 其中:
??? 非零元素僅出現在主對角上(aii,0≤i≤n-1),緊鄰主對角線上面的那條對角線上(ai
,i+1 ,0≤i≤n-2)和緊鄰主對角線下面的那條對角線上(a i+1
,i,0≤i≤n-2)。當|i-j|>1時,元素aij=0。
??? 由此可知,乙個k對角線矩陣(k為奇數)a是滿足下述條件的矩陣:
??????????? 若|i-j|>(k-1)/2,則元素aij=0。
??? 對角矩陣可按行優先順序或對角線的順序,將其壓縮儲存到乙個向量中,並且也能找到每個非零元素和向量下標的對應關係。具體【參見練習】
資料結構 五) 多維陣列
一 總結 對這一部分還是很生疏,不太會做,而且openjudge上的題目進度緩慢,不開森。但是我還是會好好做題的,也得抽空複習一下,不然都忘光了。二 筆記 線性表 具有相同型別的資料元素的有限序列。多維 陣列 線性表中的資料元素可以是線性表,但所有元素的型別相同。廣義表 線性表中的資料元素可以是線性...
資料結構之多維陣列理解
1 最基本的理解是 陣列中的陣列 2 最形象的理解是 一維陣列就象一行字。二維陣列就象一頁字。三維陣列就象一本書中的字。四維陣列就象一套書中的字。五維陣列就象書櫃中多套書中的字。六維陣列就象圖書館多個書櫃多套書中的字。七維陣列是乙個城市的圖書館藏書中的字 八維陣列是乙個國家的圖書館藏書中的字 九維陣...
資料結構 字串和多維陣列
第 4 章 字串和多維陣列 本章的基本內容是 字串。在程式語言中大都有串變數的概念,而且實現了基本的串操作,本章重點討論串的儲存結構及模式匹配演算法。陣列。在程式語言中大都提供了陣列作為構造資料型別,本章重點討論陣列以及特殊矩陣的儲存與定址。4.1 字串 主要內容 4.11 字串的定義 4.12 字...