資料結構與演算法B作業二,線性表 1

2021-06-18 10:57:58 字數 1398 閱讀 8021

一口氣繼續做………

1.以下哪種結構是邏輯結構,而與儲存和運算無關:圖

迴圈鍊錶

順序表雙向鍊錶

這題選「圖」~沒啥說的……

2.已知兩個元素依值遞增有序排列的線性表a和b,且同一表中的元素值各不相同。構造乙個線性表c,其元素為a和b中元素的交集,且表c中的元素也依值遞增有序排列。已知a和b的最大長度都是n。求你設計的高效演算法的時間複雜度:

on∗n

olog⁡n

onon

由於a和b都是有序數列,我們只需要從a的第一項開始與b的第一項比較,如果相同則放入c,如果a>b則b前進一位繼續比,如果a

3.下面的敘述中正確的是:

線性表在順序儲存時,查詢第i個元素的時間與i的數值無關。

線性表在鏈式儲存時,插入第i個元素的時間與i的數值成正比。

線性表在順序儲存時,插入第i個元素的時間與i的數值成正比。

線性表在順序儲存時,刪除第i個元素的時間與i的數值無關。

選第一、第二,順序表優點是隨機查詢,鍊錶優點是儲存空間靈活,可動態。

第三個,要把後面的所有元素移動,時間與n-i+1成正比,n是線性表的規模。

第四個,順序表要刪除表中元素時需要將之後所有元素前移。

p∗n+(1−p)∗(n+1)

p∗n+(1−p)∗(n+1)/2

p∗n+(1−p)∗(n+1)/4

p∗n+p∗(n+1)/2

選第二個,沒有的概率為p,如果沒有就要比n次,是p*n,如果有的話,就是1-p的概率,可能比較1,2,3...n次,總共(1+n)*n*0.5,算平均再除以n,於是加起來就是p*n+(1-p)*(1+n)*0.5

5.某個線性表儲存元素如下:

a0,a1,a2,a3,a4,a5,a6,a7,a8

。如果該線性表以順序表形式實現,那麼在

ai0≤i≤9

的位置插入新元素,需要移動的元素個數為:

8−i

i

9−i

i+1選第三個,插到哪就要把後面的所有元素挪一下,於是就要挪9-i次。

6.某個線性表儲存元素如下:

a0,a1,a2,a3,a4,a5,a6,a7,a8

。如果該線性表以單鏈表形式實現(含頭結點),已知頭指標,那麼在

ai0≤i≤9

前的位置插入新元素,需要移動指標的次數為:

9−i

i

8−i

i+1選第二個,在哪插入就要把指標挪到哪。

資料結構與演算法分析(二)線性表

對於非空的線性表或線性結構,其特點是 1 存在唯一的乙個被稱作 第乙個 的資料元素 2 存在唯一的乙個被稱作 最後乙個 的資料元素 3 除第乙個之外,結構中的每個元素均只有乙個前驅 4 出最後乙個外,結構中的每個元素均只有乙個後繼 線性表的型別定義 線性表是乙個相當靈活的資料結構,其長度可根據需要增...

資料結構(二) 線性表

線性表是最簡單最常用的資料結構,是一種典型的線性儲存結構。定義 線性表是由n n 0 個資料元素 結點 a1 a 2 an 組成的有限序列。n為表的長度。當n 0,為 空表 n 0時,為 a1,a 2,an 邏輯特徵 非空的線性表只有乙個頭結點,也只有乙個終結點,頭結點只有乙個直接後繼結點,而沒有直...

漫談資料結構 二 線性表1

1.1 定義 線性表是具有相同型別元素組成的乙個線性序列。元素的個數即為元素的長度,元素為0時稱為空表。如下 a,b,c,d,e,f,g 這就表示乙個線性表。1.2 特徵 有且只有乙個頭結點,頭結點沒有前驅結點。有且只有乙個尾結點,尾結點沒有後繼節點。除頭尾結點外,其他結點都有乙個前驅結點和後繼節點...