前言:
尽管搜索题在难度高的比赛中都不是重要考点,但作为骗分的一大技巧,无论多强的选手,都仍然无法忽视搜索的重要性。并且,有些高难度比赛中,一些带一定技巧的搜索题,很有可能会放在签到题的位置上。这些题全场都会做,但正因如此,所有人都会毫不犹豫地先写这道题,如果在这道题上花的时间过多,对后面的难题将造成不可估量的影响。
总之,练好搜索是绝对必要的。
双向BFS
传统的BFS是从起点出发,一直搜到终点为止,而双向BFS则是从起点和终点同时出发,搜到两者的某些状态相遇为止。
在一些限定行走步数的问题中,双向BFS往往是非常有效的一种方式。
例如:POJ1198Solitaire
这道题中,要求最多走8步,考虑每一步可以转移的情况,总共有16种,总的状态数就会有 168=4294967296 16 8 = 4294967296 种(当然,这道题中,由于棋盘的限制,最多应该仅有