黑體加粗為不熟悉的題目
判斷題
1.(neuDS)所謂隨機存取,就是通過首地址和元素的位序號值可以在O(1)的時間內找到指定的元素。
2.(neuDS)在順序表上進行插入、刪除操作時需要移動元素的個數與待插入或待刪除元素的位置無關。
3.順序存儲方式只能用於存儲線性結構。
4.在順序表中取出第i個元素所花費的時間與i成正比。
5.對於順序存儲的長度為N的線性表,刪除第一個元素和插入最后一個元素的時間復雜度分別對應為O(1)和O(N)。
6.(neuDS)在順序表中邏輯上相鄰的元素,其對應的物理位置也是相鄰的。
7.順序存儲的線性表可以隨機存取。
8.順序存儲結構的主要缺點是不利於插入或刪除操作。
選擇題
1.用數組表示線性表的優點是()。
B.便於隨機存取
C.可以動態地分配存儲空間
D.不需要占用一片相鄰的存儲空間
2.閱讀下列程序,其功能是()。
typedef struct {
ElemType *list;
int size;
intMaxSize;
}SeqList;
void fun1(SeqList&L) {
inti, j;
ElemType temp;
for (i=0, j= L.sise-1; i<j; i++, j--) {
temp=L.list[i];
L.list[i]=L.list[j];
L.list[j]=temp;
}
}
B.將鏈表原地逆置
C.將順序表首尾元素對換
D.將鏈表首尾元素對換
3.順序存儲表示中數據元素之間的邏輯關系是由( )表示的。
B.邏輯順序
C.存儲位置
D.問題上下文
4.順序表的優點是( )。
B.適用於各種邏輯結構的存儲表示
C.存儲密度(存儲利用率)高
D.刪除操作的時間效率高
5.若線性表最常用的操作是存取第i個元素及其前驅的值,則采用( )存儲方式節省時間。
B.雙向鏈表
C.單循環鏈表
D.順序表
6.數組A[1..5,1..6]每個元素占5個單元,將其按行優先次序存儲在起始地址為1000的連續的內存單元中,則元素A[5,5]的地址為:
B.1125
C.1140
D.1145

7.若某線性表最常用的操作是存取任一指定序號的元素和在最后進行插入和刪除運算,則利用哪種存儲方式最節省時間?
B.單循環鏈表
C.帶頭結點的雙循環鏈表
D. 順序表
8.若長度為n的線性表采用順序結構,在第i個數據元素之前插入一個元素,需要它依次向后移動()個元素。
B.n-i+1
C.n-i-1
D.i
9.已知線性表中的元素以值遞增有序排列,閱讀下列程序,該算法的功能是()。
typedef struct {
ElemType *list;
int size;
intMaxSize;
}SeqList;
void fun3(SeqList&L, ElemType min, ElemType max){
int i=0, j, k, d;
while(i<L.size&&L.list[i]<=min)
i++;
j = i;
while (j<L.size&&L.list[j]<max)
j++;
d = j-i;
if ( d==0) return;
for (k=j; k<L.size; k++) L.list[k-d] = L.list[k];
L.size = L.size - d;
}
B.將順序表中值大於min且小於max的元素向前移動
C.刪除順序表中所有值大於min且小於max的元素
D.將順序表中值大於max的元素向前移動min個位置
10.對於順序表的優缺點,以下說法錯誤的是( )。
B.可以方便地隨機存取表中的任一結點
C.插入和刪除運算較方便
D.容易造成一部分空間長期閑置而得不到充分利用
11.串是一種特殊的線性表,其特殊性體現在()。
B.數據元素是一個字符
C.可鏈接存儲
D.數據元素可以是多個字符

//串又稱為字符串,是一種特殊的線性表,其特殊性體現在數據元素是一個字符,也就是說串是一種內容受限的線性表。(棧和隊列是操作受限的線性表)