貪心解題心得
上星期做了幾道貪心的題目,對貪心演算法有了一定的了解,下面介紹一下自己的理解以及做題中遇到的問題以及一些需要注意的地方。
貪心演算法主要用於求最優解的問題,由區域性最優解推到全域性最優解,是解決問題的首選演算法,但只能解決一小部分問題,應用範圍受限。
揹包問題:
揹包問題分為兩類,一類是0-1揹包問題,即分裝個體不可拆分,這類問題往往考慮揹包的剩餘空間,另一類是揹包問題,即個體可拆分,揹包會裝滿。是最典型的貪心。
走廊問題:
acm公司搬桌子的題使我第一次有了標記的思想,對走過的房間標記後問題就簡單多了,這個方法在之後的的練習中也多次用到,是個很不錯的方法。
雷達問題:
雷達問題也教給了我一種新的思想,即減維度,這題將二維的空間問題轉化為一維的區間問題,使問題思路更加清晰。
釣魚問題:釣魚問題的坑比較多,難在對題目的理解上,但我認為其中最值得學習的地方是那最優解的順序問題,同樣是小問題的最優解,加在一起就可以,多數情況下不用必須按順序組合
上面是對貪心的理解以及一些不錯的題目
下面來說一下做題中應該注意的地方
輸入資料以檔案結尾結束
看到上面這一行,不要猶豫立馬我while(scanf()!=eof或~scanf())安排上,不要問我怎麼知道的,說多了都是淚啊!
sort函式:
貪心裡見到的最多的就是它了,結構體+cmp函式+sort函式簡直成了貪心的標配了。記得加上標頭檔案。
讀題時盡量讀英文原版,翻譯出來的個別錯誤會給解題帶來很大的麻煩
最後反思一下自己的不足,通過這幾天的練習暴露出來最大地問題就是細節處理不夠仔細,看到別人做的這麼快心裡著急,調**也不那麼仔了,用的時間反而更長了,以後要注意,打**最重要的是思路清晰,急不得。
Work Break II 解題心得
輸入乙個待分解的字串s,乙個包含多個單詞的字典dict 例如 s catsanddog dict 按照字典dict的單詞將s分解為多段的一句話 例如如下分解 cats and dog 輸出為所有分解可能的陣列,對於上述輸入有如下輸出 坑 需要解出所有可能的句子分解形式 1.只求得一種句子分解形式的解...
貪心(1) 心得
貪心演算法概念 跟dp想法差不多 其實很有差別,要好好區別,新手想法 在當前做出最好的選擇。也就是說,不從整體上考慮,他所做出的近視某種意義上的區域性最優解。又是具有無後效性,即某個狀態以後的過程不會影響以前的狀態,只與當前狀態有關。一定要仔細分析其是否滿足無後效性。思路 區域性最優策略能導致產生全...
貪心演算法題解心得
通過vj上的題目,發現很多題目都是類似的,有的題目也可以用之前的思路來考慮 暴力求解的思路 但是這樣的話只能過樣例,會超時,這也就是為什麼使用貪心的原因吧,要考慮分步求解,求最優解。覺得做貪心問題最重要的還是想解決問題的方法,一般知道如何解決問題就做對了一半,然而這解決問題的方法有的時候並不太好想,...