一、對分治法思想的體會
分治法:字面上的解釋是「分而治之」,就是把乙個複雜的問題分成兩個或更多的相同或相似的子問題,再把子問題分成更小的子問題,直到最後子問題可以簡單的直接求解,原問題的解即子問題的解的合併。
分治法在每一層遞迴上都有三個步驟:
1.分解:將原問題分解為若干個規模較小,相互獨立,與原問題形式相同的子問題(子問題性質與原問題相同);
2. 解決:若子問題規模較小而容易被解決則直接解,否則遞迴地解各個子問題
3. 合併:將各個子問題的解合併為原問題的解。
由此類似於數學歸納法,找到解決本問題的求解方程公式,然後根據方程公式設計遞迴程式。
二、結對程式設計情況匯報
程式設計作業一改以往單打獨鬥的情況,相較於之前個人的鑽研和查詢資料,結對程式設計是更適合我的方法,兩個人一起程式設計作業時可對程式設計過程詳細分工。
在和yingfang huang結對的過程中,讀題完畢後能向對方提出自己的一些疑問或者對疑問做出回答,選擇乙個當時對題目有一定思路的人來寫**,另乙個人在旁邊理解,在**完畢後邊討論邊給**進行注釋解析。
兩個思維的碰撞能夠相互填補漏洞,比個人搜尋資料更高效率地解決問題。
第二章小結
1.本章內容小結 線性表的基本操作 初始化 取值 插入 刪除 查詢 而在順序表與鍊錶中又存在區別 時空間效能的區別 操作實現演算法的區別等 此後,鍊錶還有單鏈表 雙鏈表 迴圈鍊錶。2.完成作業或實踐時解決問題的經驗分享 首先得先明白題目所需要的演算法要求,這一點在課本中可具體參考一些例題演算法分析 ...
第二章 演算法
本章內容了解即可。如果大家對資料結構完全不了解,我建議你先去看一下b站上郝斌老師的課程。演算法是解決特定問題求解步驟的描述,在計算機中表現為指令的優先序列,並且每條指令表示乙個或多個操作。只聽資料結構課程,當然可以,但是聽完後你可能沒有什麼感覺,因為你不知道他是幹嘛的。但是如果配合演算法來講解,你就...
第二章 演算法
一 演算法定義 二 演算法的時間複雜度與空間複雜度 1.定義 演算法是解決待定問題求解步驟的描述,在計算機中表現為指令的有限序列,並且每條指令表示乙個或多個操作。2.演算法的特性 演算法有五個基本特性 輸入 輸出 有窮性 確定性和可行性。演算法在一定條件下,只有一條執行路徑,相同的輸入只能有唯一的輸...