本学期的算法学习复习(不详细)

       简要记录这个学期学习的所有算法,因时间关系,不进行详细介绍,只是告诉没学过的人有这么一些算法。想学的请自己去了解,勿喷。

贪心进阶算法

核心思想:局部最优导致整体最优。

例题:选课(使用结束时间排序,优先选结束最早的课程和开始最晚的课程)

三分算法

核心思想:

//需要l,r,lmid,rmid四个变量


lmid=l+(l+r)/3;rmid=r-(l+r)/3;

/*----------------------------*/


if(lmid<rmid)    r=rmid;    //然后再计算lmid,rmid
if(lmid>rmid)    l=lmid;    //然后与上面一样

例题:求二次函数的最小值

深搜(DFS)的剪枝算法

核心思想:结果没有比之前更优即不再考虑该结果;去除多余的判断;使用排序;

例题:猫坐缆车下山

广搜(BFS)的搜索优化

用C++的Map<string,int> m;进行标记。

STL标准容器:map

本学期的重点:字典树(数据结构)

核心思想:整合重复的前缀,节约空间。

AC自动机 (正在学)

核心思想:结合KMP算法和字典树,快速判断字符串是否出现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值