5、21

一周没写了

还是慢慢总结一下本周的收获

part1:新知识:

  1)斜率优化(好像不会考),用斜率的思想求解最值(其实有点像线性规划),一般来讲核心是转化为维护一个坐标系上的凸包

  2)剪枝:

    1排除等效冗余

    2最优化剪枝

    3可行性剪枝

    4搜索顺序剪枝

  3)双端搜索:

    2*(2^(n/2))<2^n

    2*((n/2)!)<n!

    bfs:转移可以打包成函数代码量和时间复杂度一样减半

    dfs:前半段照常转移,后半段完成时的check要考虑上前半段的内容(可以二分、CDQ之类的)

  4)多源广搜:起始点全部入队就对了

  5)优先队列广搜:用优先队列保证每次转移都使用最优解转移,保证结果的最优化(用于每次转移代价不一定的时候)

  6)A-star:解决(部分解决)优先队列优化中陷入局部最优解导致偏离整体最优解过远的情况

      设计估价函数(估价必须优于实际答案),每次取估价最小的(优先队列)

  7)迭代加深dfs:复杂度类似广搜,但是利用限制深度的dfs便于转递复杂的状态

  8)IDA*:搜索的究极无敌螺旋霹雳进化版本:

      A*+迭代加深,有估价函数的迭代加深dfs,结合了估价函数的难想和迭代加深的难调

      原理:估价优于实际消费,故如果估价已经超出限制,则必定失败直接结束(其实感觉更像一种剪枝策略)

 

原来搜索都有那么多复杂的知识点(

 

part2:细节点

  斜率优化

  1)队列不能为空,想好第一次可以放的值(因为要更新时计算斜率)

  2)精度问题:用乘不用除

  3)好好数学推导鸭(注意斜率=dx/dy,想好哪个横哪个纵)

  关于搜索

  1)有关二维地图时,注意横纵坐标及上限(当时调一个迷宫调将近一个小时然后发现问题)

  2)估价函数一定一定要比实际更优啊

 

为什么细节那么少??因为,都是细节,只写几个比较常见的和比较脑梗的

 

part3:

  金句积累:

    数缺形时少直观,形少数时难入微,数形结合百般好——华罗庚

    

posted @ 2023-05-21 23:15  ddt_cai  阅读(32)  评论(0)    收藏  举报