演算法第四章作業

2022-02-24 05:44:29 字數 1061 閱讀 1107

1.  我對貪心演算法的理解

貪心演算法是指,在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優上加以考慮,他所做出的是在某種意義上的區域性最優解

貪心演算法不是對所有問題都能得到整體最優解,關鍵是貪心策略的選擇,選擇的貪心策略必須具備無後效性,即某個狀態以前的過程不會影響以後的狀態,只與當前狀態有關。

4-3 最優合併問題

1 #include 2

using

namespace

std;

3#define max 500

4int

n;5 vectorv;

6bool cmp(int a,intb)7

10//

獲得最多比較次數

11int

getmax()

1233

return

sum;34}

35//

獲得最小比較次數,稍微麻煩些,需要每合併兩個就要進行排序一次,因為合

36//

並完的需要重新放到vector中,但是無論是放到開頭還是放到末尾,都不能保

37//

證有序,所以需要重新排序一次。 ps :在保證基本有序的情況下,用插入

38//

排序效率更高些。

39int

getmin()

4057

58return

sum;59}

60int

main()

6169 cout<'';

70 cout<7172

return0;

73 }

貪心選擇性質:當求最多比較次數時,只需在樣本陣列中選取最大的兩個,使其相加,即可滿足相加的數也是樣本陣列中最大的乙個。

3.  請說明在本章學習過程中遇到的問題及結對程式設計的情況

問題:會場安排問題中該按什麼標準選擇會場順序太難了!!!!orz orz orz.

結對程式設計的情況:結對程式設計讓我們能更加快的看懂別人的**以及學習到一道題更簡潔的解法。

演算法第四章作業

一 對貪心演算法的理解 貪心演算法的基本要素是 貪心選擇性質和最優子結構性質 貪心選擇每次選取當前最優解,可以依賴以往的選擇,但絕不依賴於將來所做的選擇,也不依賴於子問題的解。貪心演算法通常以自頂向下的方式進行。二 汽車加油問題的貪心選擇性質 汽車應選擇在能到達的前提下離自己最遠的加油站進行加油 i...

演算法第四章作業

我的理解 主要是在貪心二字上面,但是重要的是在哪些方面上貪心,是解決題目的最重要的思路。因此要考慮貪心選擇性質和子結構性質 貪心選擇性質 從區域性的最優解擴充套件到整體的最優解 最優子結構性質 整體的最優解包含子問題的最優解 由於要計算汽車從起點到終點的最少加油次數 故,每次可以盡可能多的在滿油量內...

演算法第四章作業

一 對貪心演算法的理解 貪心演算法在每個決策點作出當時最優的選擇,即作出區域性最優解來推導出全域性最優解。二 請選擇一道作業題目說明你的演算法滿足貪心選擇性質 對於汽車加油的問題,我們要考慮的貪心策略是汽車加滿油最多能走多遠,直到汽車沒辦法開到下乙個加油站的時候才加油。證明 假設在加滿油可行駛n千公...