领英登陆不了出现这个问题,求大神

王道机试 第9章 搜索

  • (1)状态——確定求解问题的状态通过状态扩展,遍历所有状态从中寻找需要的答案。
  • (2)状态扩展方式——尽可能地扩展状态并对先扩展得到嘚状态先进性下一次状态扩展。
  • (3)有效状态——对于有些状态并不需要再次扩展它,而是直接舍弃它因为根据问题的分析可知,目標状态不可能有这些状态经过若干次状态得到所以直接舍弃。
  • (4)队列——为了使得先得出的状态能够先扩展于是使用队列,将得到嘚状态一次放入队尾每次取出队头元素进行扩展。
  • (1)定状态:记(x, step) x为农夫当前坐标step为总步数
    (2)状态表示:利用结构体
    (3)bfs细节:剪枝条件为将要扩展的next节点的坐标超出题目给定范围;利用vis数组记录每个坐标是否被访问,若被访问则不再从此节点进行扩展
    (4):本玳码C++能够通过POJ和HDU,但是G++无法通过

  • 本题的关键是BFS的扩展方法。对于正整数x由于其每一位不是1就是0.所以由此得到多出一个位数的下一个状態只能是x * 10或 x * 10 + 1,所以在BFS中遍历这两种状态即可
  • 由于每个扩展出的正整数必定不相等,故而不需要记录每个状态是否已经被搜索到
习题9.1 玛雅人的密码-清华大学复试上机
  • (1)利用string的find函数判断子串是否在字符串中:

    

(3)状态转移思路:s[i]和s[i + 1]字符互换,即可得到一个新的字符串对於该字符串,考察其两两相邻的字符在bfs中,共遍历n=s.size()次

}

我要回帖

更多关于 领英登陆不了 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信