最優解問題的求解

2021-09-01 05:57:59 字數 638 閱讀 9443

1. 一般來說題目中需要求解出最優解的問題,我們是可以使用普通遞迴,遞推,深度優先搜尋,記憶型的遞迴,貪心或者動態規劃來進行求解的

其中使用普通的遞迴或者深搜,遞推這些資料量較小的情況下求解速度還行,假如資料量相對大一點的情況下,而且節點的數量比較多,這個時候使用這些方法來解決往往會耗時比較大,有時候都需要求解半天了,原因是它需要搜尋搜尋的可能,把每一條路都嘗試一遍,等到所有的路徑走完才結束搜尋,時間複雜度是指數級別的上公升的,所以來說**的效能會比較差一點

而使用我們的貪心或者動態規劃來求解的話那麼將會大大降低時間複雜度,因為它不會去搜尋每一條路徑,而是每一步都在當前所有可能的組合中找出乙個最佳的方案,並且儲存歷史上的這些最佳方案,由子問題的區域性最優解逐步逼近最終問題的最優解,那麼最終就會求解出最終我們要求的最佳方案,在逼近的過程中往往運用到的是實際上多個子問題的最優解來進行當前子問題的最優解的推導,這也是動態規劃的核心所在

所以來說動態規劃是在當前子問題的組合中尋找組合中最優方案求解的過程,使用歷史上的儲存的最優解的結果進行逐步逼近最終答案的過程,其中使用到的是空間換時間的策略,所以來說相對於其他方法來解決這種問題是較優的

2. 所以對於這種最優解的問題我們最好使用動態規劃來進行求解,因為這樣可以提高我們**的效能,使用動態規劃來解決也可以培養我們思考問題的方式,提高我們解決問題的能力

最優解問題

最優解問題題型隱晦 變化多端,所以總結此類題目的特徵 解法歸類有助於我們更快的想到這類題目的解題方法 佔坑!後續補充 最優解題目特徵 解題思路1 貪心思想 例題 九度oj題目1434 今年暑假不ac 分析過程 乙個節目提供了三個引數 開始時間 結束時間 持續時間。思考開始最早的元素是不是第乙個最優解...

最優解問題

新龜兔賽跑 要求烏龜到達終點的最優解,無非就是貪心,dp,和bfs,dfs.等等方法了,貪心已經排除了,因為我發現,開始的時候我只是把倒數第乙個站點作為終點去考慮,題目中給的測試資料只有三個,當讓是能過的,但是當站點比這多時,這樣做就行不通了,我們只有把每個站點都作為一次終點去考慮,求烏龜到改點時的...

梯度下降法 求解最優解

import numpy as np import matplotlib as mpl import matplotlib.pyplot as plt import math from mpl toolkits.mplot3d import axes3d 設定在jupyter中matplotlib的...