类最长路径问题
转自:http://wudashan.cn/2017/09/04/Company-Programming-Competition/
深度优先搜索算法(对所有选项一视同仁)
递归遍历所有可能性,并找出所需的结果。时间复杂度指数级。
贪心算法(选最有利于所需结果的那个选项往下进行)
每次都走出路最少的格子,这样后面可以选择的余地就比较大,最优解的概率也就大的多。贪心算法容易陷入局部最优解的情况。时间复杂度是线性级。
模拟退火算法(贪心算法中某些选择中跳出最优选项往下进行)
在函数不断迭代的过程中,以一定的概率来接受一个比当前解要差的新解,因此有可能会跳出这个局部最优解,从而达到全局最优解。 时间复杂度是线性级。