专题二总结

专题二主要就是一些搜索算法,二分搜索,三分搜索,深度优先搜索和广度优先搜索。

关于二分搜索,因为以前也接触过,所以觉得这玩意其实并不难,就是将搜索区间不断分成两半,然后不断取中间值与某一规则进行比较,以此来得出正确答案。

它适用于单调函数,逼近求解某点的值。

三分搜索,不恰当的说就是两个二分放一块。三分搜索适用于求凸性函数或凹性函数的极值。

广度优先搜索,从某一状态开始,利用某一正确规则,生成所有可能的状态,构成下一层节点,检查是否出现目标状态,若未出现,就对此层的节点再利用这个规则继续生成再下一层的节点,依次类推,知道出现目标状态为止。广度优先搜索是用队列去解决问题,将初始状态放到队列中,然后生成下一层节点,删除此状态,然后这样循环下去。

深度优先搜索,从初始状态,利用规则生成搜索树下一层任一个结点,检查是否出现目标状态,若未出现,以此状态利用规则生成再下一层任一个结点,再检查,重复过程一直到叶节点(即不能再生成新状态节点),当它仍不是目标状态时,回溯到上一层结果,取另一可能扩展搜索的分支。采用相同办法一直进行下去,直到找到目标状态为止。深度优先搜索利用递归实现。

你可能感兴趣的:(专题二总结)