1. 程式人生 > >【演算法】貪心演算法

【演算法】貪心演算法

1. 定義

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

2. 基本要素

(1)貪心選擇
貪心選擇是指所求問題的整體最優解可以通過一系列區域性最優的選擇,即貪心選擇來達到。
(2)最優子結構
當一個問題的最優解包含其子問題的最優解時,稱此問題具有最優子結構性質。運用貪心策略在每一次轉化時都取得了最優解

3.貪心演算法與動態規劃

貪心演算法 動態規劃
選擇 採用從頂向下、以迭代的方法做出相繼選擇
結構 最優子結構:每一次操作都對結果產生直接影響,無退回 根據以前的選擇結果對當前進行選擇,有回退功能
運用 一維 二、三維