2017-09-11 14:03:39 公務(wù)員考試網(wǎng) http://dmtsz.cn/ 文章來源:華圖教育
數(shù)據(jù)結(jié)構(gòu)
(6)下列敘述中正確的是( )
A)程序執(zhí)行的效率與數(shù)據(jù)的存儲結(jié)構(gòu)密切相關(guān)
B)程序執(zhí)行的效率只取決于程序的控制結(jié)構(gòu)
C)程序執(zhí)行的效率只取決于所處理的數(shù)據(jù)量
D)以上三種說法都不對
【答案】A
【解析】本題考查程序效率。程序效率是指程序運(yùn)行速度和程序占用的存儲空間。影響程序效率的因素是多方面的, 包括程序的設(shè)計、使用的算法、數(shù)據(jù)的存儲結(jié)構(gòu)等。在確定數(shù)據(jù)邏輯結(jié)構(gòu)的基礎(chǔ)上,選擇一種合適的存儲結(jié)構(gòu),可 以使得數(shù)據(jù)操作所花費(fèi)的時間少,占用的存儲空間少,即提高程序的效率。因此,本題選項 A 的說法是正確的。
(7)下列敘述中正確的是( )
A)數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)必定是一一對應(yīng)的
B)由于計算機(jī)存儲空間是向量式的存儲結(jié)構(gòu),因此,數(shù)據(jù)的存儲結(jié)構(gòu)一定是線性結(jié)構(gòu)
C)程序設(shè)計語言中的數(shù)組一般是順序存儲結(jié)構(gòu),因此,利用數(shù)組只能處理線線結(jié)構(gòu)
D)以上三種說法都不對
【答案】D
【解析】本題考查數(shù)據(jù)結(jié)構(gòu)的基本知識。 數(shù)據(jù)之間的相互關(guān)系稱為邏輯結(jié)構(gòu)。通常分為四類基本邏輯結(jié)構(gòu),即集合、線性結(jié)構(gòu)、樹型結(jié)構(gòu)、圖狀結(jié)構(gòu)或網(wǎng)狀 結(jié)構(gòu)。存儲結(jié)構(gòu)是邏輯結(jié)構(gòu)在存儲器中的映象,它包含數(shù)據(jù)元素的映象和關(guān)系的映象。存儲結(jié)構(gòu)在計算機(jī)中有兩種, 即順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)。順序存儲結(jié)構(gòu)是把數(shù)據(jù)元素存儲在一塊連續(xù)地址空間的內(nèi)存中;鏈?zhǔn)酱鎯Y(jié)構(gòu)是 使用指針把相互直接關(guān)聯(lián)的節(jié)點鏈接起來。因此,這兩種存儲結(jié)構(gòu)都是線性的?梢,邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)不是一 一對應(yīng)的。因此,選項 A 和選項 B 的說法都是錯誤的。 無論數(shù)據(jù)的邏輯結(jié)構(gòu)是線性的還是非線性的,只能選擇順序存儲結(jié)構(gòu)或鏈?zhǔn)酱鎯Y(jié)構(gòu)來實現(xiàn)存儲。程序設(shè)計語言中,數(shù)組是內(nèi)存中一段連續(xù)的地址空間,可看作是順序存儲結(jié)構(gòu)。可以用數(shù)組來實現(xiàn)樹型邏輯結(jié)構(gòu)的存儲,比如二叉樹。 因此,選項c的說法是錯誤的
(8)冒泡排序在最壞情況下的比較次數(shù)是( )
A)n(n+1)/2
B)nlog2n
C)n(n-1)/2
D)n/2
【答案】C
【解析】冒泡排序的基本思想是:將相鄰的兩個元素進(jìn)行比較,如果反序,則交換;對于一個待排序的序列,經(jīng)一 趟排序后,最大值的元素移動到最后的位置,其他值較大的元素也向最終位置移動,此過程稱為一趟冒泡。對于有 n 個數(shù)據(jù)的序列,共需n-1趟排序,第i趟對從l到n-i個數(shù)據(jù)進(jìn)行比較、交換。冒泡排序的最壞情況是待排序序列 逆序,第l趟比較n-1次,第2趟比較n-2次。依此類推,最后趟比較1次,一共進(jìn)行n-l趟排序。因此,冒泡排 序在最壞情況下的比較次數(shù)是(n-1)+(n-2)+…+l,結(jié)果為n(n-1)/2。本題的正確答案是選項c。
(9)一棵二叉樹中共有70個葉子結(jié)點與80個度為1的結(jié)點,則該二叉樹中的總結(jié)點數(shù)為( )
A)219
B)221
C)229
D)231
【答案】A
【解析】本題考查數(shù)據(jù)結(jié)構(gòu)中二叉樹的性質(zhì)。二叉樹滿足如下一條性質(zhì),即:對任意一棵二叉樹,若終端結(jié)點(即葉 子結(jié)點)數(shù)為n0,而其度數(shù)為2的結(jié)點數(shù)為n2,則n0=n2+l。 根據(jù)這條性質(zhì)可知,若二叉樹中有70個葉子結(jié)點,則其度為2的結(jié)點數(shù)為70-1,即69個。二叉樹的總結(jié)點數(shù)是度為2、度為1和葉子結(jié)點的總和,因此,題目中的二叉樹總結(jié)點數(shù)為69+80+70,即219。因此,本題的正確答案是選項A。
(10)下列敘述中正確的是( )
A)算法的效率只與問題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)
B)算法的時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量
C)數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)是一一對應(yīng)的
D)算法的時間復(fù)雜度與空間復(fù)雜度一定相關(guān)
【答案】B
【解析】本題考查數(shù)據(jù)結(jié)構(gòu)中有關(guān)算法的基本知識和概念。數(shù)據(jù)的結(jié)構(gòu),直接影響算法的選擇和效率。而數(shù)據(jù)結(jié)構(gòu) 包括兩方面,即數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的存儲結(jié)構(gòu)。因此,數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)都影響算法的效率。選項A 的說法是錯誤的。算法的時間復(fù)雜度是指算法在計算機(jī)內(nèi)執(zhí)行時所需時間的度量;與時間復(fù)雜度類似,空間復(fù)雜度 是指算法在計算機(jī)內(nèi)執(zhí)行時所需存儲空間的度量。因此,選項 B 的說法是正確的。 數(shù)據(jù)之間的相互關(guān)系稱為邏輯結(jié)構(gòu)。通常分為四類基本邏輯結(jié)構(gòu),即集合、線性結(jié)構(gòu)、樹型結(jié)構(gòu)、圖狀結(jié)構(gòu)或網(wǎng)狀 結(jié)構(gòu)。存儲結(jié)構(gòu)是邏輯結(jié)構(gòu)在存儲器中的映象,它包含數(shù)據(jù)元素的映象和關(guān)系的映象。存儲結(jié)構(gòu)在計算機(jī)中有兩種, 即順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)?梢,邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)不是一一對應(yīng)的。因此,選項c的說法是錯誤的。有 時人們?yōu)榱颂岣咚惴ǖ臅r間復(fù)雜度,而以犧牲空間復(fù)雜度為代價。但是,這兩者之間沒有必然的聯(lián)系。因此,選項 D 的說法是錯誤的。
相關(guān)內(nèi)容推薦:
10萬+
閱讀量150w+
粉絲1000+
點贊數(shù)