目录
p.s. 讲义中还有一堆例题。( 原谅我真的不太想听巨佬飞跃式讲课...)
剪枝(可行性&最优性)
对于可行性剪枝,要求我们“看的越远”,剪枝的效果更好。
所谓看得更远,就是我们能够通过现在的情况,预见到若干步之后能否依然可能。
举个例子来说,比如说走棋盘问题,可行性剪枝怎么剪呢?
我们可以减掉已经出界的,这种最显然,但是效果也是最差的。
我们也可以剪掉下一步没有地方走的状态,这个相比较于上一种剪枝效果不会好太多。
但是,如果我们通过一些数学方法快速计算出来一些结果,
比如假设某种染色之后,我们现在的跳法不能跳到某种颜色了,
并且还剩余这种颜色的没有访问过,那么这种状态也是不可能到达终点的状态了。
详细说下最优性剪枝。 假设目前我们的最优解是 ans,这道题目要的是最小化答案。