算法分析復(fù)習(xí)題含答案_第1頁
算法分析復(fù)習(xí)題含答案_第2頁
算法分析復(fù)習(xí)題含答案_第3頁
算法分析復(fù)習(xí)題含答案_第4頁
算法分析復(fù)習(xí)題含答案_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、一、選擇題1、衡量一個(gè)算法好壞的標(biāo)準(zhǔn)是(A)運(yùn)行速度快(B)占用空間少2、記號O的定義正確的是C )。(C)時(shí)間復(fù)雜度低(D)代碼短(A) O(g(n):= f(n) |存在正常數(shù)c 和(B) O(g(n):= f(n) |存在正常數(shù)c 和(C) O(g(n):= f(n) |對于任何正常數(shù)有:0空 f(n )<cg( n) ;(D) O(g(n):= f(n) |對于任何正常數(shù)(A)。c>0,存在正數(shù)和n0使得對所有 n_nO有:0_f(n) n0使得對所有 n_n0有:0_ cg(n)c>0,存在正數(shù)和n0 >0使得對所有n0 >0使得對所有空 cg(n);乞

2、 f(n) ;n亠n0有:0 乞 cg(n) < f(n) ;3、二分搜索算法是利用( A(A)分治策略(B)動態(tài)規(guī)劃法4、使用分治法求解不需要滿足的條件是(實(shí)現(xiàn)的算法。(C)貪心法A )。(D)回溯法(A)子問題必須是一樣的(C)子問題的解可以合并5、合并排序算法是利用(A)分治策略(B)子問題不能夠重復(fù)(D)原問題和子問題使用相同的方法解 實(shí)現(xiàn)的算法。(C)貪心法A(B)動態(tài)規(guī)劃法C )的算法。(D)回溯法6、實(shí)現(xiàn)大整數(shù)的乘法是利用(A)貪心法(B)動態(tài)規(guī)劃法7、以下不可以使用分治法求解的是( 丨(A)棋盤覆蓋問題(B)選擇問題8、實(shí)現(xiàn)循環(huán)賽日程表利用的算法是(A)分治策略(B)動態(tài)

3、規(guī)劃法9、實(shí)現(xiàn)棋盤覆蓋算法利用的算法是(A)分治法(B)動態(tài)規(guī)劃法10、矩陣連乘問題的算法可由( B )(A)分支界限算法11、實(shí)現(xiàn)大整數(shù)的乘法是利用的算法(A)貪心法(B)動態(tài)規(guī)劃法12、最長公共子序列算法利用的算法是(A)分支界限法(B)動態(tài)規(guī)劃法13、下列算法中通常以自底向上的方式求解最優(yōu)解的是(A)備忘錄法(B)動態(tài)規(guī)劃法14、下列是動態(tài)規(guī)劃算法基本要素的是(A)定義最優(yōu)解(B)構(gòu)造最優(yōu)解15、下列不是動態(tài)規(guī)劃算法基本步驟的是(A)找出最優(yōu)解的解空間16、能米用貪心算法求最優(yōu)解的問題,一(A)最優(yōu)子結(jié)構(gòu)性質(zhì)與貪心選擇性質(zhì)(C)最優(yōu)子結(jié)構(gòu)性質(zhì)與重疊子問題性質(zhì)17、下面問題(B )不能使用

4、貪心法解決。(A)單源最短路徑問題(B)(C)最小花費(fèi)生成樹問題(D)18、以下不可以使用分治法求解的是( D )°(A)棋盤覆蓋問題(B)選擇問題(C)分治策略(D)回溯法(C)歸并排序)。貪心法)°(C)貪心法設(shè)計(jì)實(shí)現(xiàn)。A(C)A(D)(D)回溯法(D)0/1背包問題回溯法(B)動態(tài)規(guī)劃算法C(C)貪心算法 )°(C)分治策略)。(C )貪心法B貪心法(C)。(C)A算出最優(yōu)解。(B)構(gòu)造最優(yōu)解 (0算出最優(yōu)解般具有的重要性質(zhì)為:((D)回溯算法(D)回溯法(D)。(D)(D)回溯法回溯法子問題重疊性質(zhì)(D)定義最優(yōu)解A )(B)重疊子問題性質(zhì)與貪心選擇性質(zhì)(

5、D)預(yù)排序與遞歸調(diào)用N皇后問題 背包問題(C)歸并排序(D) 0/1背包問題6B )。19、備忘錄方法是那種算法的變形(A)分治法(B)動態(tài)規(guī)劃法(C貪心法20、下列算法中通常以深度優(yōu)先方式系統(tǒng)搜索問題解的是(A)備忘錄法(B)動態(tài)規(guī)劃法(C)貪心法21、下面哪種函數(shù)是回溯法中為避免無效搜索采取的策略(A)遞歸函數(shù)(B)剪枝函數(shù)22、回溯法在問題的解空間樹中,按(A)廣度優(yōu)先 (B)活結(jié)點(diǎn)優(yōu)先23、回溯法的效率不依賴于下列哪些因素(A).滿足顯約束的值的個(gè)數(shù)(B)(C)計(jì)算限界函數(shù)的時(shí)間(D)(C)隨機(jī)數(shù)函數(shù)24、回溯法解0-1背包問題時(shí)的解空間樹是(A)子集樹(B)排列樹25、回溯法解旅行售

6、貨員問題時(shí)的解空間樹是(A)子集樹(B)排列樹(C)D(D)(D)(D)回溯法 )° 回溯法 ) 搜索函數(shù)D )策略,從根結(jié)點(diǎn)出發(fā)搜索解空間樹。(C)擴(kuò)展結(jié)點(diǎn)優(yōu)先D)°計(jì)算約束函數(shù)的時(shí)間 確定解空間的時(shí)間A(C)(D)深度優(yōu)先)。深度優(yōu)先生成樹B )。深度優(yōu)先生成樹(D)廣度優(yōu)先生成樹26、一個(gè)問題可用動態(tài)規(guī)劃算法或貪心算法求解的關(guān)鍵特征是問題的(A)重疊子問題(B)27、下列算法中不能解決(A)貪心法(B)28、下面問題(B )(A)單源最短路徑問題29、矩陣連乘問題的算法可由(A)分支界限算法(B)動態(tài)規(guī)劃算法30、貪心算法與動態(tài)規(guī)劃算法的主要區(qū)別是(A)最優(yōu)子結(jié)構(gòu)(B

7、)貪心選擇性質(zhì)最優(yōu)子結(jié)構(gòu)性質(zhì)(C)貪心選擇性質(zhì)0/1背包問題的是(A )動態(tài)規(guī)劃(C)回溯法不能使用貪心法解決。(B) N皇后問題(C)最小生成樹問題B )設(shè)計(jì)實(shí)現(xiàn)。(C)貪心算法 B )。(C)構(gòu)造最優(yōu)解(D)B(D)定義最優(yōu)解廣度優(yōu)先生成樹)。(D)分支限界法(D背包問題(D)回溯算法(D)定義最優(yōu)解、簡答題1. 算法重要特性是什么?2. 算法分析的目的是什么?3. 算法的時(shí)間復(fù)雜性與問題的什么因素相關(guān)?4. 算法的漸進(jìn)時(shí)間復(fù)雜性的含義?5. 最壞情況下的時(shí)間復(fù)雜性和平均時(shí)間復(fù)雜性有什么不同?6. 簡述二分檢索(折半查找)算法的基本過程。7. 背包問題的目標(biāo)函數(shù)和貪心算法最優(yōu)化量度相同嗎?

8、8. 采用回溯法求解的問題,其解如何表示?有什么規(guī)定?9. 回溯法的搜索特點(diǎn)是什么?10. n皇后問題回溯算法的判別函數(shù)place的基本流程是什么?11. 為什么用分治法設(shè)計(jì)的算法一般有遞歸調(diào)用?12. 為什么要分析最壞情況下的算法時(shí)間復(fù)雜性?13. 簡述漸進(jìn)時(shí)間復(fù)雜性上界的定義。14. 二分檢索算法最多的比較次數(shù)?15. 快速排序算法最壞情況下需要多少次比較運(yùn)算?16. 貪心算法的基本思想?17. 回溯法的解(X1,X2,xn)的隱約束一般指什么?18. 闡述合并排序的分治思路。19. 快速排序的基本思想是什么。20. 什么是直接遞歸和間接遞歸?消除遞歸一般要用到什么數(shù)據(jù)結(jié)構(gòu)? 21試述分治

9、法的基本思想。22. 設(shè)計(jì)動態(tài)規(guī)劃算法有哪些主要步驟?23. 分治法與動態(tài)規(guī)劃法的異同?24. 備忘錄方法和動態(tài)規(guī)劃算法相比有何異同?簡述之。參考答案:1. 輸入、輸出、確定性、有限性、可實(shí)現(xiàn)性。2. 分析算法占用計(jì)算機(jī)資源的情況,對算法做出比較和評價(jià),設(shè)計(jì)出更好的算法。3. 算法的時(shí)間復(fù)雜性與問題的規(guī)模相關(guān),是問題大小n的函數(shù)。4. 當(dāng)問題的規(guī)模n趨向無窮大時(shí),影響算法效率的重要因素是T(n)的數(shù)量級,而其他因素僅是使時(shí)間復(fù)雜度相差常數(shù)倍,因此可以用T(n)的數(shù)量級(階)評價(jià)算法。時(shí)間復(fù)雜度T(n)的數(shù)量級(階)稱為漸進(jìn)時(shí)間復(fù)雜性。5. 最壞情況下的時(shí)間復(fù)雜性和平均時(shí)間復(fù)雜性考察的是n固定時(shí)

10、,不同輸入實(shí)例下的算法所耗時(shí)間。最壞情況下的時(shí)間復(fù)雜性取的輸入實(shí)例中最大的時(shí)間復(fù)雜度:W(n) = max T(n , I) , I Dn平均時(shí)間復(fù)雜性是所有輸入實(shí)例的處理時(shí)間與各自概率的乘積和:A(n)=刀 PT(n ,1) I Dn6. 設(shè)輸入是一個(gè)按非降次序排列的元素表Ai : j和x,選取A(i+j)/2 與x比較,如果A(i+j)/2=x ,則返回(i+j)/2 ,如果 A(i+j)/2<x ,貝U Ai : (i+j)/2-1 找 x,否則在 A (i+j)/2+1: j找x。上述過程被反復(fù)遞歸調(diào)用。7. 不相同。目標(biāo)函數(shù):獲得最大利潤。最優(yōu)量度:最大利潤/重量比。8. 問題

11、的解可以表示為n元組:(X1,X2, xn),Xi S, S為有窮集合,Xi S, (X1,x2,Xn)具備完備性,即(X1,x2,Xn)是合理的,則(X1,x 2,Xi) (i<n) 定合理。9. 在解空間樹上跳躍式地深度優(yōu)先搜索,即用判定函數(shù)考察xk的取值,如果 xk是合理的就搜索xk為根節(jié)點(diǎn)的子樹,如果xk取完了所有的值,便回溯到xk-1。10. 將第K行的皇后分別與前 k-1行的皇后比較,看是否與它們相容,如果不相容就返回false , 測試完畢則返回true 。11. 子問題的規(guī)模還很大時(shí),必須繼續(xù)使用分治法,反復(fù)分治,必然要用到遞歸。12. 最壞情況下的時(shí)間復(fù)雜性決定算法的優(yōu)

12、劣,并且最壞情況下的時(shí)間復(fù)雜性較平均時(shí)間復(fù)雜 性游可操作性。13. T(n)是某算法的時(shí)間復(fù)雜性函數(shù),f(n)是一簡單函數(shù),存在正整數(shù)No和C, nNo,有T( n)<f(n),這種關(guān)系記作 T( n)=O(f( n)。14. 二分檢索算法的最多的比較次數(shù)為log n 。15. 最壞情況下快速排序退化成冒泡排序,需要比較n2次。16. 是一種依據(jù)最優(yōu)化量度依次選擇輸入的分級處理方法?;舅悸肥牵菏紫雀鶕?jù)題意,選取一種量度標(biāo)準(zhǔn);然后 按這種量度標(biāo)準(zhǔn)對這n個(gè)輸入排序,依次選擇輸入量加入部分解中。如果當(dāng)前這個(gè)輸入量的加入,不滿足約束條件,則不把此輸入加到這部分解中。17. 回溯法的解(X1,X

13、2,Xn)的隱約束一般指個(gè)元素之間應(yīng)滿足的某種關(guān)系。18. 講數(shù)組一分為二,分別對每個(gè)集合單獨(dú)排序,然后將已排序的兩個(gè)序列歸并成一個(gè)含n個(gè)元素的分好類的序列。如果分割后子問題還很大,則繼續(xù)分治,直到一個(gè)元素。19. 快速排序的基本思想是在待排序的N個(gè)記錄中任意取一個(gè)記錄,把該記錄放在最終位置后,數(shù)據(jù)序列被此記錄分成兩部分。所有關(guān)鍵字比該記錄關(guān)鍵字小的放在前一部分,所有比它 大的放置在后一部分,并把該記錄排在這兩部分的中間,這個(gè)過程稱作一次快速排序。之 后重復(fù)上述過程,直到每一部分內(nèi)只有一個(gè)記錄為止。20. 在定義一個(gè)過程或者函數(shù)的時(shí)候又出現(xiàn)了調(diào)用本過程或者函數(shù)的成分,既調(diào)用它自己本身,這稱為直

14、接遞歸。如果過程或者函數(shù)P調(diào)用過程或者函數(shù) Q Q又調(diào)用P,這個(gè)稱為間接遞歸。消除遞歸一般要用到棧這種數(shù)據(jù)結(jié)構(gòu)。21. 分治法的基本思想是將一個(gè)規(guī)模為n的問題分解為k個(gè)規(guī)模較小的子問題,這些子問題互相獨(dú)立且與原問題相同。 遞歸地解這些子問題, 然后將各個(gè)子問題的解合并得到原問題的解。22. 設(shè)計(jì)動態(tài)規(guī)劃算法的主要步驟為:(1)找出最優(yōu)解的性質(zhì),并刻劃其結(jié)構(gòu)特征。(2)遞歸地定義最優(yōu)值。(3)以自底向上的方式計(jì)算出最優(yōu)值。(4)根據(jù)計(jì)算最優(yōu)值時(shí)得到的信息,構(gòu)造最優(yōu)解。23. 分治法與動態(tài)規(guī)劃法的相同點(diǎn)是:將待求解的問題分解成若干個(gè)子問題,先求解子問題, 然后從這些子問題的解得到原問題的解。兩者的不同點(diǎn)是:適合于用動態(tài)規(guī)劃法求解的問題,經(jīng)分解得到的子問題往往不是互相獨(dú) 立的。而用分治法求解的問題,經(jīng)分解得到的子問題往往是互相獨(dú)立的。24.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論