學(xué)習(xí)目的:掌握分治算法思想 學(xué)習(xí)要求:熟練運(yùn)用分治算法思想解決以下問題 1.二叉查找算法 2.查找最大最小值 3.歸并排序 4.快速排序 5.選擇第k小元素 6.大整數(shù)乘法
分治算法簡(jiǎn)介 分治算法也叫分治策略,把輸入分為若干個(gè)部分,遞歸的解每一個(gè)問題,最后將這些子問題合并成為一個(gè)全局解。如果子問題較大,可以再次使用分治策略。 由此可以得到分治策略解決的問題特點(diǎn): 1.該問題的規(guī)模縮小到一定的程度就可以容易地解決; 2.該問題可以分解為若干個(gè)規(guī)模較小的相同問題; 3.分解出的子問題的解可以合并為原問題的解; 4.分解出的各個(gè)子問題是相互獨(dú)立的。 大家已經(jīng)看到劃分出的自問題與原問題是一樣的,那么我們?cè)O(shè)計(jì)算法的時(shí)候也就可以利用遞歸的編程技巧了!
不想打字了,直接把PPT上傳了http://m.shnenglu.com/Files/Geek/Divd.rar (PPT中包含以上各個(gè)問題的分析很算法的代碼)