Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 8252b5d

Browse files
committed
Create 贪心算法.md
1 parent 62961fe commit 8252b5d

File tree

1 file changed

+27
-0
lines changed

1 file changed

+27
-0
lines changed

‎blogs/Algorithm/贪心算法.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
贪心算法
3+
---
4+
5+
#### 目录
6+
7+
1. 定义
8+
2. 算法思路
9+
3. 示例
10+
11+
#### 定义
12+
13+
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择,就能得到问题的答案。贪心算法需要充分挖掘题目中条件,没有固定的模式,解决贪心算法需要一定的直觉和经验。
14+
15+
贪心算法不是对所有问题都能得到整体的最优解。能使用贪心算法解决的问题具有贪心选择性质。贪心选择性质严格意义上需要数学证明。能使用贪心算法解决的问题必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。
16+
17+
#### 算法思路
18+
19+
第一步,当我们看到这类问题的时候,首先要联想到贪心算法:
20+
21+
针对一组数据,我们定义了限制值和期望值,希望从中选出几个数据,在满足限制值的情况下,期望值最大。
22+
23+
第二步,我们尝试看下这个问题是否可以用贪心算法解决:
24+
25+
每次选择当前情况下,在对限制值同等贡献量的情况下,对期望值贡献最大的数据。
26+
27+
第三步,我们举几个例子看下贪心算法产生的结果是否是最优的。大部分情况下,举几个例子验证一下就可以了。严格的证明贪心算法的正确性,是非常复杂的,需要涉及比较多的数学推理。而且,从实践的角度来说,大部分能用贪心算法解决的问题,贪心算法的正确性都是显而易见的,也不需要严格的数学推导证明。

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /