最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

c++貪心算法進(jìn)階(一)

2022-12-26 20:12 作者:破空鷹蕩  | 我要投稿

貪心算法(又稱貪婪算法)是指,在對(duì)問(wèn)題求解時(shí),總是做出在當(dāng)前看來(lái)是最好的選擇。也就是說(shuō),不從整體最優(yōu)上加以考慮,他所做出的是在某種意義上的局部最優(yōu)解。

貪心算法的基本思路是從問(wèn)題的某一個(gè)初始解出發(fā)一步一步地進(jìn)行,根據(jù)某個(gè)優(yōu)化測(cè)度,每一步都要確保能獲得局部最優(yōu)解。每一步只考慮一個(gè)數(shù)據(jù),他的選取應(yīng)該滿足局部?jī)?yōu)化的條件。若下一個(gè)數(shù)據(jù)和部分最優(yōu)解連在一起不再是可行解時(shí),就不把該數(shù)據(jù)添加到部分解中,直到把所有數(shù)據(jù)枚舉完,或者不能再添加算法停止。

排序:

貪心算法解決的是最優(yōu)值的問(wèn)題(即求最大值或最小值一類的問(wèn)題),因此,在求解局部最優(yōu)解時(shí),一般需要對(duì)數(shù)據(jù)進(jìn)行從小到大(或者從大到?。┻M(jìn)行排序后再根據(jù)順序依次選擇做出局部最優(yōu)選擇。所以,很多的貪心題目,都需要對(duì)數(shù)據(jù)進(jìn)行排序。

無(wú)后效性:

貪心算法不是對(duì)所有問(wèn)題都能得到整體最優(yōu)解,關(guān)鍵是貪心策略的選擇,選擇的貪心策略必須具備無(wú)后效性,即某個(gè)狀態(tài)以前的過(guò)程不會(huì)影響以后的狀態(tài),只與當(dāng)前狀態(tài)有關(guān)。

最優(yōu)子結(jié)構(gòu):

當(dāng)一個(gè)問(wèn)題的最優(yōu)解包含其子問(wèn)題的最優(yōu)解時(shí),稱此問(wèn)題具有最優(yōu)子結(jié)構(gòu)性質(zhì)。運(yùn)用貪心策略在每一次轉(zhuǎn)化時(shí)都取得了最優(yōu)解。問(wèn)題的最優(yōu)子結(jié)構(gòu)性質(zhì)是該問(wèn)題可用貪心算法或動(dòng)態(tài)規(guī)劃算法求解的關(guān)鍵特征。貪心算法的每一次操作都對(duì)結(jié)果產(chǎn)生直接影響,而動(dòng)態(tài)規(guī)劃則不是。貪心算法對(duì)每個(gè)子問(wèn)題的解決方案都做出選擇,不能回退;動(dòng)態(tài)規(guī)劃則會(huì)根據(jù)以前的選擇結(jié)果對(duì)當(dāng)前進(jìn)行選擇,有回退功能。動(dòng)態(tài)規(guī)劃主要運(yùn)用于二維或三維問(wèn)題,而貪心一般是一維問(wèn)題。

貪心算法的優(yōu)缺點(diǎn):

貪心算法是很常見(jiàn)的算法之一,貪心策略一旦經(jīng)過(guò)證明成立后,它就是一種高效的算法。一般可以達(dá)到O(n)或者O(nlg(n)) (用到排序的話)的級(jí)別。

貪心算法的難點(diǎn)在于:你需要證明貪心策略的正確性后才能真正運(yùn)用到題目的算法中。

在解決最優(yōu)值的一類問(wèn)題時(shí),如果你實(shí)在想不出正解,用用貪心有時(shí)也是可以拿到部分分的,在比賽里算是騙分算法之一。

貪心算法沒(méi)有固定的算法框架,基本靠自己的做題經(jīng)驗(yàn)和題目分析能力,所以這個(gè)算法需要多做題,積累經(jīng)驗(yàn)。

這個(gè)算法需要你自力更生了。

c++貪心算法進(jìn)階(一)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
高尔夫| 陵川县| 广州市| 岳普湖县| 边坝县| 广西| 铁岭县| 闽清县| 同心县| 自治县| 专栏| 榆树市| 平原县| 澄江县| 呼和浩特市| 武平县| 沂源县| 清丰县| 田阳县| 双江| 冀州市| 东乌珠穆沁旗| 龙口市| 潜山县| 菏泽市| 苏尼特左旗| 四川省| 青海省| 台前县| 秭归县| 鲁甸县| 睢宁县| 横山县| 莱阳市| 沁阳市| 富蕴县| 肥东县| 文山县| 政和县| 五寨县| 旬阳县|