第一章緒論單元測試
一、單選(2分)
1、?___C__ 是數據的最小單位。
-
A.信息項
-
B.數據元素
-
C.數據項
-
D.表元素
2、?以下說法不正確的是 ___B___。
-
A.數據元素是數據的基本單位
-
B.數據項可由若干個數據元素構成?
-
C.數據可由若干個數據元素構成
-
D.數據項是不可分割的最小標識單位
3、?數據結構是指 __C____ 的集合以及它們之間的關系。
-
A.數據?
-
B.計算方法
-
C.數據元素
-
D.結構
4、?計算機所處理的數據一般具備某種內在聯系,這是指 ___B___。
-
A.數據項和數據項之間存在某種關系
-
B.元素和元素之間存在某種關系
-
C.數據和數據之間存在某種關系
-
D.元素內部具有某種結構
5、?在數據結構中,與所使用的計算機無關的是數據的 ___A___ 結構。
-
A.邏輯
-
B.物理
-
C.存儲
-
D.邏輯和存儲
6、?數據的邏輯結構可以分為 ___B___ 兩類。
-
A.內部結構和外部結構
-
B.線性結構和非線性結構
-
C.動態結構和靜態結構
-
D.緊湊結構和非緊湊結構
7、?數據的邏輯結構是指 __D__ 關系的整體。
-
A.數據類型之間
-
B.數據項之間邏輯
-
C.存儲結構之間
-
D.數據元素之間邏輯
8、?以下是數據結構中 __C____ 屬非線性結構。
-
A.棧
-
B.隊列
-
C.平衡二叉樹
-
D.串
9、以下屬于邏輯結構是 ___B___。
-
A.雙鏈表
-
B.有序表
-
C.順序表
-
D.單鏈表
10、?以下不屬于存儲結構是 __B____。
-
A.鄰接表
-
B.線性表
-
C.順序表
-
D.單鏈表
11、?在計算機中存儲數據時,通常不僅要存儲各數據元素的值,而且還有存儲 __D____。
-
A.數據的處理方法
-
B.數據的存儲方法
-
C.數據元素的類型?
-
D.數據元素之間的關系
12、?數據結構在計算機內存中的表示是指 ___B___。
-
A.數據元素之間的關系
-
B.數據的存儲結構
-
C.數據的邏輯結構?
-
D.數據結構
13、?在數據的存儲中,一個節點通常存儲一個 __A____。
-
A.數據元素
-
B.數據結構
-
C.數據項
-
D.數據類型
14、?在決定選取任何類型的存儲結構時,一般不多考慮 __A____。
-
A.各節點的值如何
-
B.對數據有哪些運算
-
C.節點個數的多少
-
D.所用編程語言實現這種結構是否方便
15、?數據在計算機的存儲器中表示時,邏輯上相鄰的兩個元素對應的物理地址也是相鄰的,這種存儲結構稱之為 ___C___。
-
A.鏈式存儲結構
-
B.路基結構
-
C.順序存儲結構
-
D.以上都對
16、?數據采用鏈式存儲結構時,要求 ___D___。
-
A.所有節點占用一片連續的存儲區域
-
B.每個節點有多少個后繼就設多少個指針域
-
C.節點的最后一個數據域是指針類型
-
D.每個節點占用一片連續的存儲區域
17、?數據的運算 __A____。
-
A.與采用何種存儲結構有關
-
B.是根據存儲結構來定義的效率
-
C.必須用程序設計語言來描述
-
D.有算術運算和關系運算兩大類
18、?____D___ 不是算法的基本特性。
-
A.可行性
-
B.指令序列長度有限
-
C.確定性
-
D.在規定的時間內完成
19、?計算機中算法指的是解決某一問題的有限運算序列,它必須具備輸入、輸出、__C_____。
-
A.確定性、有窮性和穩定性
-
B.易讀性、穩定性和確定性
-
C.可行性、有窮性和確定性
-
D.可行性、可移植性和可擴充性
20、?一個算法具有 ____A____? 等設計目標。
-
A.健壯性
-
B.確定性?
-
C.至少有一個輸入
-
D.可行性
- A.算法的可行性是指指令不能有二義性
- B.其他幾個都是錯誤的
- C.算法最終必須由計算機程序實現
- D.算法等同于程序
- A.計算機硬件性能
- B.問題規模
- C.編譯程序質量
- D.程序設計語言
- A.算法的執行時間和問題規模之間的關系
- B.算法是否具有較好地可讀性
- C.算法中是否存在語法錯誤
- D.算法的功能是否符合設計要求
- A.問題規模與n^2成正比
- B.問題規模是n^2
- C.執行時間等于n^2
- D.執行時間與n^2成正比
- A.找出數據結構的合理性
- B.研究算法中輸入和輸出的關系
- C.分析算法的效率以求改進
- D.分析算法的易讀性和文檔性
- A.T2(n)=n^2-8000n
- B.T3(n)=
-6000n?
- C.T4(n)=20000log2n
- D.T1(n)=nlog2n+5000n
- A.T1(n)=1000log2n?
- B.T2(n)=
-1000log2n
- C.T4(n)=2nlog2n-1000log2n
- D.T3(n)=n^2- 1000log2n
(1)原地工作算法的含義是指不需要任何額外的輔助空間
(2)在相同的問題規模下n下,時間復雜度為O(nlog2n)的算法在執行時間上總是優于時間復雜度為O(n^2)的算法?
(3)時間復雜度通常是指最壞情況下,估計算法執行時間的一個上限
(4)一個算法的時間復雜度與實現算法的語言無關
- A.(3)
- B.(1)、(2)
- C.(1)
- D.(1)、(4)
- A.隊列
- B.二叉樹
- C.棧
- D.線性表
?for(i=1,s=0; i<=n; i++) {t=1;for(j=1;j<=i;j++) t=t*j;s=s+t;}
- A.O(n^4)
- B.O(n)
- C.O(n^2)
- D.O( n^3)

- A.O(n^2)
- B.O(n^3)
- C.O(n^4)
- D.O(n)?
- A.675
- B.3375
- C.1350
- D.2025
void fun( int n) { int i=1; while (i<=n) i=i*2}
- A.O(n^2)
- B.O(nlog2n)
- C.O(n)
- D.O(log2n)
?void fun( int n) { int i=1; while (i<=n) i=i*3}
- A.O(nlog3n)?
- B.O(n)?
- C.O(log3n)
- D.O(n^2)
?
- A.O(n^2)
- B.O(nlog2n)
- C.O(n)
- D.O(log2n)? ?
?36、數據元素是數據的最小單位。×
37、數據對象就是一組任意數據元素的集合。×
41、邏輯結構相同的數據,可以采用多種不同的存儲方法。√
?、42?邏輯結構不相同的數據,必須采用多種不同的存儲方法。×
43、?邏輯結構相同的數據,在設計存儲結構時,它們的節點類型也一定相同。×
44、數據的邏輯結構時指數據的各數據項之間的邏輯關系。×
?45、?算法的優劣與算法描述語言無關,但與所用的計算機有關。×
46、?算法可以用不同的語言描述,如果用C或PASCAL語言等高級語言來描述,則算法實際上就是程序了。×
?47、?程序一定是算法。×
?48、?算法最終必須由計算機程序實現.×
49、算法的可行性是指指令不能有二義性。×
50、健壯的算法不會因非法輸入數據而出現莫名其妙的狀態。√