Gready algorithm,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,算法得到的是在某种意义上的局部最优解,不是对所有问题都能得到整体最优解。

一般步骤:

  1. 将复杂问题分解为多个子问题
  2. 子问题的解是当前所有解中的最优解
  3. 将所有子问题的解合并为原问题的解

疑问

  1. 当前子问题的解会不会对后续的状态产生影响/

例子

哈夫曼树的构造:选取当前权值最小的两个结点组成二叉树