Acwing 算法总结
文章平均质量分 84
Acwing 算法总结
小王要变强
这个作者很懒,什么都没留下…
展开
-
算法提高 —— 深搜中的重难点总结
相比bfs,迭代加深随着深度限制的增加,虽然会重复搜索到搜过的部分,但是却是可以忽略不计的(举个例子,假如搜索数是一颗二叉树的形式,假设答案在第n层,前面的所有节点加起来也才2^n-1,跟第n层所有节点差不多,但是一般题目的搜索树每个节点不可能只有两个子节点,那么重复搜索的部分就更不值一提),而bfs搜的话,可能会出现搜索节点过多导致爆空间。缺点是可能会出现答案在搜索树层数很浅,在靠后的子树中,但由于搜索次序需要遍历完一棵搜索树所有的节点,所以导致效率低下。这样的搜索树很可能会使在bfs的过程中队列爆掉。原创 2023-10-16 14:51:55 · 178 阅读 · 2 评论 -
算法题高 —— 宽搜汇总
在广搜中要想保证答案正确,就必须保证队列中元素的具有两端性和单调性(单调递增),如果队列中前面的元素大于后面的元素,则不能保证搜出来的答案最优,一般的广搜权值都是1所以就正常插入队尾就能保证队列的单调性和两端性,当权值有1和0时,如果还一股脑插入队尾,则不能保证队列的单调性,假设a和b为队列中前两个元素,d[a]=d[b]=x;a先出队,搜到的下一个点的权值为1,将x+1插入队尾,在让b出队,假设b搜到的点权值为0,则插入队尾的值为x,x+1>x,所以该队列不是一个单调递增的队列,不能保证答案的正确性。原创 2023-09-22 14:24:32 · 82 阅读 · 1 评论