2021.2.2总结(劳役结合心得) ——赵某人

今天所学的主要是三个个大知识点🙃;
首先是单调队列和单调栈:
Eg:
在这里插入图片描述
这道题就是一道典型的单调栈在这里插入图片描述
这道题就是一道典型的单调队列
先解说一下这两个名词“单调栈” “单调队列”的区别:
很显然,区别就是一个是栈,一个是队列 (🐷:废话)
好吧,“单调”可以说明二者都具有单调性,单调增or单调减(自己维护);“栈”具有先进后出的性质,而“队列”具有先进先出的性质。
接下来就是怎样维护单调性:

  1. 要考虑单调性:一般来讲,求MAX是单调减;求MIN是单调增。
  2. 维护单调性:建一个栈or队列,进一个比较一个,符合单调性的就进去不符合的就出去再进去。
  3. 找最值;
    那么这两道题就可以很好的解出来了。
    其次则是HASH(字符串HASH):
    Eg of HASH:
    在这里插入图片描述
    Eg of 字符串 HASH:在这里插入图片描述
    这两道题就是HASH和字符串HASH的典型。((。・∀・)ノ)
    HASH:HASH就是一个像函数一样的东西,你放进去一个值,它给你输出来一个值。输出的值就是HASH值。一般HASH值会比原来的值更好储存(更小)或比较。😑
    字符串HASH:把字符串转换成一个整数的函数。而且要尽量做到使字符串对应唯一的Hash值。
    值得注意的是:
    HASH的P取的是最接近N的素数,字符串HASH中的P一般取131or13331,
    这样就可能尽可能减少冲突。
    当然,如果题目非得让你冲突,你取啥也没用(ㄟ( ▔, ▔ )ㄏ),因此就得推荐几款消除冲突的APP:
  4. 拉链法:每个哈希表节点都有一个next指针,多个哈希表节点可以用next指针构成一个单向链表,被分配到同一个索引上的多个节点可以用这个单向
    链表连接起来在这里插入图片描述
    2.再HASH法:就是多次HASH,取不同的P,直到没有冲突
    3.(课外)建立公共溢出区:将哈希表分为基本表和溢出表两部分,凡是和基本表发生冲突的元素,一律填入溢出表
    最后则是KMP算法:
    Eg of KMP
    在这里插入图片描述
    Eg of 引申在这里插入图片描述
    首先,要知道KMP是干什么的:KMP全称为字符串查找算法,是在一个文本串S内找一个模式串P出现的位置。
    其次,则是KMP中一些必备的东西(😵):
  5. NEXT数组:代表当前字符之前的字符串中,有多大长度的相同前缀后缀。(有些预处理的意思)在这里插入图片描述
    (这里的p就是NEXT)
    2.KMP常规操作:
    在这里插入图片描述
    注意:NEXT数组和常规操作需要根据题目来进行改变,不能学死。(👍)
    Eg:在这里插入图片描述
    这道题就需要在操作上改变一下。
    🐷:所学所获到这里就结束了(😱😱😱);
    {
    T
    Q
    L
    在这里插入图片描述

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值