第四章演算法作業

2022-07-09 11:39:25 字數 528 閱讀 3087

個人理解是多多益善的情況,盡量找出滿足條件的情況。

題意刪數問題要求在乙個正整數中刪去 k 個數字使得新的序列構成的數字為最小數。

思路此問題應該先找出刪數之後數變小的情況:即從左到右,如果前乙個數大於後乙個數,則刪去這個數會使整個新的數變小。

做法可先按照題目給出的 k 個數對整數處理為字串然後進行乙個乙個遍歷,使用 vector 實現動態刪數。此方法為盡可能地刪去乙個數使得結果最小,符合貪心演算法的要求。

code

#include #include #include using namespace std;

int main()

while (c--)

}if (!flag) n.erase(n.begin()+n.size()-1);

}int zero = 0;

for (int j = 0; j < n.size(); ++j)

if (n.empty()) cout << 0;

return 0;

}

演算法第四章作業

1.我對貪心演算法的理解 貪心演算法是指,在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優上加以考慮,他所做出的是在某種意義上的區域性最優解。貪心演算法不是對所有問題都能得到整體最優解,關鍵是貪心策略的選擇,選擇的貪心策略必須具備無後效性,即某個狀態以前的過程不會影響以後的狀態...

演算法第四章作業

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

演算法第四章作業

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