貪心演算法總結

2021-07-10 23:41:57 字數 831 閱讀 5592

貪心演算法聽課的時候本著一重迴圈排序,找到區域性最優解,迴圈一次由區域性最優過渡到整體最優,這種單一的模式,後來做到田忌賽馬問題開始發現貪心並不只是乙個迴圈來解決的問題思想,他更多的應該更加強調的是尋找區域性最優解由區域性最優的最優即為最終解的過程(不一定要用到迴圈也不一定只用一次迴圈),其中主要的幾種題型,揹包問題、木棒問題、節目問題、時間等待分配問題(最基本的用for迴圈),尋找最優策略問題(田忌賽馬,找最少的盒子,霍夫曼演算法)等等問題。

貪心演算法的思想上抽象能力是解決的關鍵,好的抽象能極大的簡化問題的複雜度,簡化問題後再進行最優策略的制定,從而過渡到演算法,貪心演算法類題目的關鍵反而不在貪心演算法

本身,個人感覺應該在對問題符號化,程式化的抽象,和簡單數學模型的構建上,只有構建完成正確的模型和抽象,基本上策略也就完整的構建完成了,需要的僅僅是格式的統一,除了有些的題目可能策略比較複雜,需要單獨的分析,分析需要分析全面,在本專題的實際做題過程中,由於考慮不全面,而且例項資料量少,有時候的問題實際很難發現,

在完成題目的例項輸入輸出後需要的是進行一些極端案例的檢驗,以便發現策略的不對,或者有些資料的問題。

總結下貪心的解題過程,

⒈建立數學模型來描述問題。

⒉把求解的問題分成若干個子問題。

⒊對每一子問題求解,得到子問題的區域性最優解。

⒋把子問題的解區域性最優解合成原來解問題的乙個解。

實現該演算法的過程:

從問題的某一初始解出發;

求出可行解的乙個解元素;

由所有解元素組合成問題的乙個可行解。

同時感覺有些實際情況下貪心策略並不好制定,甚至不能制定,比方說多個最優解全部輸出等。

也有可能最優的最優不是最優反而最優的次優之類的是最優解的情況等。

總結 貪心演算法 貪心演算法入門總結

英語 greedy algorithm,又稱貪婪演算法,是一種在每一步選擇中都採取在當前狀態下最好或最優 即最有利 的選擇,從而希望導致結果是最好或最優的演算法。比如在旅行推銷員問題中,如果旅行員每次都選擇最近的城市,那這就是一種貪心演算法。貪心演算法在有最優子結構的問題中尤為有效。最優子結構的意思...

貪心演算法總結

第一套題主要用貪心演算法來解決問題,貪心演算法簡單來說就是從區域性最優解,進而求得整體最優解,其中難點就是選擇貪心標準,貪心標準的選擇選的巧妙問題就會變的很簡單,比如第一題搬桌子的題,就是把房間轉化為對應的走廊號,問題就簡化了很多。貪心演算法的題目有的可以很簡單的看出來,常見典型的題有,揹包問題,最...

貪心演算法總結

在求最優解問題的過程中,依據某種貪心標準,從問題的初始狀態出發,直接去求每一步的最優解,通過若干次的貪心選擇,最終得出整個問題的最優解,這種求解方法就是貪心演算法。從貪心演算法的定義可以看出,貪心演算法不是從整體上考慮問題,它所做出的選擇只是在某種意義上的區域性最優解,而由問題自身的特性決定了該題運...