递归和分治的概念性的理解
生活随笔
收集整理的這篇文章主要介紹了
递归和分治的概念性的理解
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
遞歸的概念表述: 直接或間接調(diào)用自身的算法稱為遞歸算法。
理解:遞歸算法的可以理解為多個算法的嵌套調(diào)用,只是調(diào)用算法是同一個,同時需要一個工作棧來作為各層次的數(shù)據(jù)存儲區(qū),包括所有實參指針,局部變量,返回的地址。遞歸算法效率低,更多的用在設(shè)計算法,調(diào)試程序,可讀性強。遞歸算法到非遞歸算法大部分實現(xiàn)的方法都是模擬實現(xiàn)系統(tǒng)的工作棧,但是更有效的是根據(jù)實際情況對棧簡化,減少操作,壓縮棧存儲空間。
??
分治思想:將一個規(guī)模為n的問題分解為n個規(guī)模較小的問題,子問題互相獨立且與原問題相同。遞歸解決子問題,最后將子問題的解合并得到原問題的解。
充分必要條件:
1.問題可以進行劃分為可解決的子問題;
2.具有最優(yōu)子結(jié)構(gòu),即分解為若干個相同規(guī)模的問題;
3.若干個子問題的解可以合并成該問題的解;
?
結(jié)尾:這次我只會給出相關(guān)的概念,后序會陸續(xù)推出,與此相關(guān)的算法表述,當(dāng)然還有更多的是代碼啦!!!
轉(zhuǎn)載于:https://www.cnblogs.com/jackn-crazy/p/7513421.html
總結(jié)
以上是生活随笔為你收集整理的递归和分治的概念性的理解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端自动化之nvm安装
- 下一篇: 什么情况使用 weak 关键字,相比 a