當(dāng)前位置: 首頁 ? 資訊 ? 科普博覽 ? 科技博覽 ? 正文

科技名詞 | 貪婪算法 greedy algorithm

發(fā)布日期:2022-04-24??來源:全國科學(xué)技術(shù)名詞審定委員會??瀏覽次數(shù):597
放大字體??縮小字體
核心提示:貪婪算法greedy algorithm又稱:貪心算法定義:一種不追求全局最優(yōu)解,只在每一步求得局部最優(yōu)解的算法。學(xué)科:計算機科學(xué)技術(shù)_理論計算機科學(xué)_算法設(shè)計與分析相關(guān)名詞:算法 最優(yōu)子結(jié)構(gòu)性圖片來源: 視覺中國【延伸閱讀】貪婪算法是一種用于優(yōu)化問題的簡單、直觀的算法。該算法在每個步驟進(jìn)行最優(yōu)選擇,試圖找到解決整個問題的總體最優(yōu)方法。貪婪算法每做一次貪

貪婪算法  greedy algorithm

又稱:貪心算法

定義:一種不追求全局最優(yōu)解,只在每一步求得局部最優(yōu)解的算法。

學(xué)科:計算機科學(xué)技術(shù)_理論計算機科學(xué)_算法設(shè)計與分析

相關(guān)名詞:算法 最優(yōu)子結(jié)構(gòu)性

圖片來源: 視覺中國

【延伸閱讀】

貪婪算法是一種用于優(yōu)化問題的簡單、直觀的算法。該算法在每個步驟進(jìn)行最優(yōu)選擇,試圖找到解決整個問題的總體最優(yōu)方法。貪婪算法每做一次貪婪選擇就將所求問題簡化為一個規(guī)模更小的子問題,在一些最優(yōu)解問題的求解上表現(xiàn)得更簡單、更迅速。

如果求解問題具有貪婪選擇屬性與最優(yōu)子結(jié)構(gòu)屬性,則可以使用貪婪算法解決。貪婪選擇屬性是指通過在每個步驟中選擇最優(yōu)選擇,可以得到一個全局(總體)最優(yōu)解。最優(yōu)子結(jié)構(gòu)是指如果整個問題的最優(yōu)解包含子問題的最優(yōu)解,那么問題就有最優(yōu)子結(jié)構(gòu)。

想象我們要進(jìn)行一場徒步旅行,目標(biāo)是到達(dá)可能的最高峰。在開始之前我們已經(jīng)有了地圖,但是地圖上顯示了多條可能的路徑。我們沒有時間去評估每條路徑,就采取貪婪算法,只選擇坡度最大的路徑。這似乎是一個很好的遠(yuǎn)足策略,但它總是最好的嗎?旅行結(jié)束后,我們再次查看遠(yuǎn)足地圖,可能會發(fā)現(xiàn)那里有一條泥濘的河,穿過它就能更容易到達(dá)峰頂。這意味著貪婪算法總是選擇最好的即時路徑,而不一定是最終的最佳路徑。在優(yōu)化解決方案方面,這意味著貪婪的解決方案在嘗試尋找局部最優(yōu)解時,可能錯過了一個全局最優(yōu)解。

有很多經(jīng)典的應(yīng)用,比如霍夫曼編碼,普利姆和克魯斯卡爾最小生成樹算法,還有迪杰斯特拉單源最短路徑算法,都是使用了這種思維。然而,在許多問題中,貪婪算法并不會產(chǎn)生最優(yōu)解,因為貪婪算法沒有考慮到所有的數(shù)據(jù),當(dāng)前結(jié)果都是基于它前一步的數(shù)據(jù)而計算出的局部最優(yōu)結(jié)論,缺乏瞻前顧后和統(tǒng)籌全局的能力。所以在貪婪算法失敗的問題中,動態(tài)規(guī)劃可能會是更好的選擇。

(延伸閱讀作者:大連理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院教授 楊鑫)

責(zé)任編輯:張鵬輝

?
?
[ 資訊搜索 ]? [ 加入收藏 ]? [ 打印本文 ]? [ 違規(guī)舉報 ]? [ 關(guān)閉窗口 ]

免責(zé)聲明:
本網(wǎng)站部分內(nèi)容來源于合作媒體、企業(yè)機構(gòu)、網(wǎng)友提供和互聯(lián)網(wǎng)的公開資料等,僅供參考。本網(wǎng)站對站內(nèi)所有資訊的內(nèi)容、觀點保持中立,不對內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。如果有侵權(quán)等問題,請及時聯(lián)系我們,我們將在收到通知后第一時間妥善處理該部分內(nèi)容。



?
?

?
推薦圖文
推薦資訊
點擊排行
最新資訊
友情鏈接 >> 更多