首页 > 其他分享 >5、21

5、21

时间:2023-05-21 23:22:07浏览次数:36  
标签:剪枝 21 迭代 队列 dfs 斜率 估价

一周没写了

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

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:

  金句积累:

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

    

标签:剪枝,21,迭代,队列,dfs,斜率,估价
From: https://www.cnblogs.com/Ga1ahad-and-Scientific-Witchery/p/17419461.html

相关文章

  • 2023.5.21——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午参观君乐宝企业,下午学习。我了解到的知识点:1.了解了一些数据库的知识;2.了解了一些python的知识;3.了解了一些英语知识;5.了解了一些Javaweb的知识;4.了解了一些数学建模的知识;6.了解了一些计算机网络的知识;......
  • 2023-5-21 #55 渐行渐远迷路的我 看向了光年外璀璨星河
    358P5897[IOI2013]wombats线段树维护矩阵乘法,注意到有决策单调性,复杂度\(O(nC^2\logn)\),但是空间过大,我们递归到一个较小的区间时暴力计算即可,若阈值为\(k\),空间会整体除\(k\)。359P8275[USACO22OPEN]262144RevisitedP先考虑一个序列的问题:答案显然不超过最大值\(......
  • 5月21日打卡
    例5-3题目:具有静态、动态生存期对象的时钟程序。代码部分#include<iostream>usingnamespacestd;classClock{public:Clock():hour(0),minute(0),second(0){}voidsetTime(inta=0,intb=0,intc=0){hour=a;minute=b;s......
  • py之路——day12-20230521:装饰器
    作者:zb一、装饰器1、装饰器的定义:装饰器的“器”是函数的意思,即装饰器本质上是函数,用def关键字定义2、装饰器的功能:装饰其他函数,即为其他函数添加附加功能,为函数实现他们本身没有的功能3、装饰器的原则:⑴不能修改被装饰函数的源代码(有影响线上业务的风险)⑵不能修改被装饰......
  • 2023/5/21每日随笔 调用chatgpt接口实现项目的基本需要
    首先,对于我要求的工作,gpt完美胜任,那么问题来了,怎么调用chatgpt,是可以免费调用的,但需要keyword,也就得进入chatgpt官网,就得用外网,但是要它的api应用到android上,外网手段就不可取了,于是,准备冲别人搭建的平台上调用,很幸运的是,在B站上还真的找到资源,up主也很好,教我一步一实现,搭建了以......
  • 5-21打卡:双循环链表(无哨兵)练习
    #include<iostream>usingnamespacestd;typedefstructNode{intdata;Node*next;Node*pre;}Node;Node*initlist(intdata){Node*node=newNode;node->data=data;node->next=node;node->pre=node;......
  • 【2023.05.21】爱无能病
    当心中彻底放下那段很长很长的感情后,没想到迎来的是爱无能,期待快餐式的爱情了我知道自己是值得被爱的人,但是却感觉很难很难再喜欢上别人不断地不断地约会,短短一个月竟然约过了三个异性,见见面,逛逛街啥的我似乎很焦急把自己的第一次送出去,想这么做,或许这样我就能忘记那段很长的感......
  • May 21st 2023
    朋友你好,很长时间没有联系了,你最近过的还好吗?很难想象一个人七八年乃至更长时间没有见面、寒暄,TA会有多大的变化。我很好奇过去几年在你身上发生的事情,无论是欢乐、幸福还是悲伤、难过,你生活的点点滴滴我都想了解。我猜你对我的经历和变化也同样感兴趣吧?原谅我这么不要脸的自......
  • Pjudge #21680. 【PER #3】运算符 2
    一道很有教育意义的题目。首先我们有众所周知的AND卷积和XOR卷积,容易证明不同位互不干扰,拼起来可以获得\(1+4+5\)分的高分!接下来我们按照\(1\)的个数来讨论:\(0\)个\(1\):将这一位赋值为\(0\)即可。\(1\)个\(1\):如果形如0001那么就和AND卷积是一样的,那如果......
  • Jmeter函数助手21-V
    V函数用于执行变量名、嵌套函数。类似eval函数Nameofvariable(mayincludevariableandfunctionreferences):必填,填入变量名称或者函数或者字符,可以只填一种也可以组合都填入默认值:缺省值,选填。填些后当上面条件查找变量失败则输出该值 1、V函数和eval函数是相似的,如......