答:二分法主要是分治法下的乙個特殊的思想方法,主要是將搜尋區域裡的元素分成個數大致相同的兩個部分後,選取中間元素進行比對,若相等則比對結束,若大若小,則分情況進行遞迴,從而使問題的普查區域變成原來總元素個數的一半...
從而使得整個演算法的時間複雜度降為o(logn)
但是前提是,能夠將所需的問題能不斷的二分成兩個小問題,而且還要注意設定的邊界條件及返回值要明確。
兩人在課堂上將三道題全部完成,但是第三題沒有想到二分法的使用,使得時間複雜度為n型。
在其中兩人遇到問題就是在第二題的邊界值上的選擇,後來通過舉例子的方式代入進去後解決。
演算法第二章作業
分治法 就是把乙個複雜的問題分成兩個或更多的相同或相似的子問題,再把子問題分成更小的子問題 直到最後子問題可以簡單的直接求解,原問題的解即子問題的解的合併。分治法乙個主要思想是遞迴,遞迴的時間複雜度低。演算法的複雜度低,提高了演算法的質量。分治法在每一層遞迴上都有三個步驟 分解 將原問題分解為若干個...
演算法第二章作業
分治法體會 分治法所能解決的問題一般具有以下幾個特徵 1 該問題的規模縮小到一定的程度就可以容易地解決 2 該問題可以分解為若干個規模較小的相同問題,即該問題具有最優子結構性質。3 利用該問題分解出的子問題的解可以合併為該問題的解 4 該問題所分解出的各個子問題是相互獨立的,即子問題之間不包含公共的...
演算法第二章作業
1.對分治法的理解與看法 分治法的基本思想是將乙個規模為n的問題分解為k個規模較小的子問題,這些子問題互相獨立且原問題相同。遞迴地解決這些子問題,然後將各個子問題的解合併得到原問題的解。分治法解決問題一般會用到遞迴的方法,在計算效率時,可以用遞迴方程來分析。在分析問題時,要準確的分析母問題與子問題的...