判斷選擇 作業10 陣列和廣義表

2021-10-11 21:01:06 字數 1908 閱讀 7501

選擇題

設有乙個10階的對稱矩陣a,採用壓縮儲存方式,以行序為主儲存,a11為第一元素,其儲存位址為1,每個元素佔乙個位址空間,則a85的位址為

只儲存其下三角元素行優先:放完第一行再放第二行

a11a21 a22

a31 a32 a33

a41 a42 a43 a44

… …a85=

7∗(7

+1)2

+5=33

a85 = \frac +5 = 33

a85=27

∗(7+

1)​+

5=33

設有陣列a[i,j],陣列的每個元素長度為3位元組,i的值為1 到8 ,j的值為1 到10,陣列從記憶體首位址ba開始順序存放,當用以列為主存放時,元素a[5,8]的儲存首位址為()。

以列為主:放滿一列再放下一列

5行8列:說明已經放滿7列 7*8;第5行的首位址他的前乙個元素a[4,8]的結束位址就是所求的開始

ba + (7*8+4)*3 = ba+180

將乙個a[1…100,1…100]的三對角矩陣,按行優先存入一維陣列b[1‥298]中,a中元素a6665(即該元素下標i=66,j=65),在b陣列中的位置k為()。

三對角矩陣:只有對角線上以及對角線的兩側有值,其餘元素為0

前65行一共有 65*3-1=194 個

a6665是第66行的第乙個(n-1),故共有 194+1=195 個

若對n階對稱矩陣a以行序為主序方式將其下三角形的元素(包括主對角線上所有元素)依次存放於一維陣列b[1…(n(n+1))/2]中,則在b中確定aij(i對稱矩陣 aij

=aji

a_=a_

aij​=a

ji​當 i≥j

i≥ji≥

j時,為下三角;i≤j

i≤ji≤

j時,為上三角

題目中讓求aij

(i

a_(iai

j​(i

的位置,為上三角,轉換到下三角中來就是aji

(j

>i)

a_(j>i)

aji​(j

>i)

第j

jj行第i

ii列,k=j

∗(j−

1)2+

ik = \frac+i

k=2j∗(

j−1)

​+i已知廣義表l=((x,y,z),a,(u,t,w)),從l表中取出原子項t的運算是()。

head是取廣義表的第乙個元素(外層的括號去除),tail是取去掉第乙個元素以外的所有尾部元素(注意外層的括號不能去除)

1. tail      (a, (u, t, w) )

2. tail      ( (u, t, w) )

3. head   (u, t, w)

4. tail      (t, w)

5. head   t

廣義表a=(a,b,(c,d),(e,(f,g))),則式子head(tail(head(tail(tail(a)))))的值為()。

設廣義表l=((a,b,c)),則l的長度和深度分別為( )

長度:最外層包含元素的個數,即去掉最外層括號後含有的元素個數。

深度:表中含有括號數最多的括號層數加一

樹最適合於用來表示

陣列和廣義表

一 陣列 陣列是一組型別相同的資料元素構成。有一維陣列 二維陣列 n 維陣列。一般實現時,可以過載操作符,比較方便一點。二 矩陣 1 矩陣的加減,需要兩個矩陣擁有相同的行列數才可以。對應各個位置分別進行計算 2 矩陣的相乘,需要第乙個陣的列數等於第二個的行數。如c 0,0 a 的第一列分別乘以 b的...

陣列和廣義表

陣列一旦被定義,它的維數和維界就不再改變 採用順序結構儲存結構表示陣列 二維陣列的儲存方式 以行序為主 c語言 以列序為主 loc i,j loc 0,0 b2 i j l 陣列是隨機儲存結構,由於計算各個元素儲存位置的時間相等,所以儲存陣列中任一元素的時間也相等。壓縮儲存 為多個值相同的元只分配乙...

陣列和廣義表

陣列和廣義錶可看成是一種特殊的線性表,其特殊在於 表中的元素本身也是一種線性表。記憶體連續。根據下標在o 1 時間讀 寫任何元素。二維陣列,多維陣列,廣義表 樹 圖都屬於非線性結構 陣列的順序儲存 行優先順序 列優先順序。陣列中的任一元素可以在相同的時間記憶體取,即順序儲存的陣列是乙個隨機訪問結構。...