我的知识点梳理

知识点梳理

dp

dp是一切题目的正解

在我看来,所有的题都是dp的思路,状态转移的部分实际上是所有算法都具备的,所有的算法都有自己的状态和转移方法。对于有后效性的dp依然可以通过一些操作去除后效性。(虽然有复杂度的提高)。
重要的dp分为几类

  • 线性
    • 背包
    • LIS
    • LCS
  • 维度
  • 区间
  • 树形
  • 数位
  • 期望
  • 状压
  • 插头

  d p \ dp  dp可以很简单,也可以很难。
根据某位大佬说,   d p \ dp  dp相当于有向无环图,就是在图上求最长路/最短路/联通性问题。
解除后效性可以用很多方法包括开更多数组,添加更多状态,倒着   d p \ dp  dp等等等。

优化

在我看来,主要有四个:

  • 前缀和
  • 单调性
  • 斜率
  • 数据结构

难度可以说是依次递增。

图论

图论的题目灵活多变,但不是说不能分类,大概有这几类。

  • 最短路问题
  • 联通性问题
  • 生成树问题
  • 树上问题
  • 网络流

图论问题的多变来源于他的定义。图论是元素与元素的关系,而几乎所有东西都能被抽象为元素(不能抽象的东西我还没见过)。
点事元素,边就是元素之间的联系,如此一来图论要解决的问题就非常明了了。尽管将问题转化为元素之间东方关系可能是困难的,我们依然有一些技巧来帮助我们抽象它们。

  • 分层图
  • 差分约束
  • 数论建图

这些是少数可以整理出来的方法。这样系统的方法是弥足珍贵的,对于我们而言也是及其幸运的。善用这些方法可以解决大量问题。

数据结构

这是最简单的东西,只要学会了就能做一大堆题。

  • 简单数据结构
  • 并查集
  • 线段树
  • 树状数组
  • 主席树
  • 二叉查找树
  • 分块
  • 字符串相关
    • trie
    • kmp
    • 后缀自动机
    • 哈希表
  • 常用stl数据结构
  • 数据结构组合

没啥好说的,不会就去学,学会就能用。
需要注意,很多时候我们必须在树上进行操作。不过我们可以采用很多方法将数据结构树上化。

其中可持久化不仅仅能实行树上操作,不过它确实是树上操作的好帮手。可持久化几乎可以使用在所有的数据结构上,即使是队列,堆这样的简单数据结构。他的实用性是难以想象的。

数学

世界上最难的也是最简单的东西。一个二年级的小学生都学的东西。然而超级超级难。
大概这么分类,知识点巨多。

  • 整除理论
    • 整除基本知识和定理
    • 整除分块
    • 带余除法
    • 最大公约数理论
    • 算数基本定理
    • 素数分解
    • 既约剩余系
  • 不定方程(同余方程)
    • 一次不定方程
    • 二次不定方程
    • 一元一次同余方程
    • 二次剩余
    • 指数与原根
  • 数论函数
    • 积性函数
      • 欧拉函数
      • 莫比乌斯函数
    • 积性函数性质
    • 数论函数变换
      • 莫比乌斯变换
      • 狄利克雷卷积
      • 傅里叶变换
      • 数论变换
  • 组合数学
    • 基础组合数学
    • 杨辉三角
    • 卢卡斯定理
  • 数列基础
    • 斐波那契数列
    • 数列通项
  • 线性代数
    • 矩阵运算
    • 线性代数基础
    • 矩阵对于其他算法的优化
  • 博弈论
    • 瞎搞的博弈论
    • 有理论基础的博弈论
  • 计算几何

数学真的是很难很难,但oi不会要求真正困难的数数学知识。尽管如此,熟练使用数学依然及其困难。
数学有时有出其不意的效果。

常用算法和离线算法

常用算法
  • 搜索
  • 贪心
  • 排序
  • 二分
  • 倍增
  • 离散化
  • 高精度
  • 启发式合并
离线算法
  • cdq
  • 整体二分

最后的最后,祝大家++RP

【源码免费下载链接】:https://renmaiwang.cn/s/gbu02 grep命令是一个强大的文本处理工具,在Linux系统中被广泛使用。它能够有效地搜索文件中的特定模式,并提供灵活的匹配方式以满足不同需求。作为全名是Global Regular Expression Print的软件,grep采用基于posix标准的正则表达式系统,支持基本功能和扩展特性。 在实际操作中,用户可以通过调整选项来控制搜索结果的表现形式。例如,“-c”选项可以仅显示符合条件的结果数量,“-i”则能实现不区分大小写的匹配效果。“-n”帮助展示包含目标模式的具体行号,“-s”则用于隐藏错误信息,而“-v”则与之相反,只呈现不符合条件的行。 正则表达式的核心在于元字符的应用。这些特殊符号赋予了grep强大的搜索能力,从简单的字符匹配到复杂的模式构建都能胜任。例如,“^”和“$”分别标识文本的起始和结束位置;方括号内部的字符可以进行范围匹配;转义操作允许用户解除默认含义的影响。 实践过程中,用户会发现部分正则表达式功能仅限于grep的基本版本,而更复杂的扩展需要借助egrep或pcre库的支持。此外,结合perl语言风格的正则表达式接口也能进一步提升搜索效率。 值得注意的是,在使用这些工具时,开发者需特别留意特殊字符的转义规则以及括号内的范围限定。通过深入理解和灵活运用这些机制,用户可以充分发挥grep的强大功能,完成各种复杂的文本处理任务。 综上所述,熟练掌握grep命令及其背后的正则表达式知识将显著提升文本处理效率和准确性。希望本文能为您提供有价值的参考和指导。
【源码免费下载链接】:https://renmaiwang.cn/s/uc6y9 在现代生活中,路由器扮演着不可或缺的角色,整合了多项服务器功能以极大地方便了网络管理与维护。然而,这种集成也可能引入网络安全性和稳定性的潜在风险。当路由器无法正确分配IP地址时,可能导致网络故障并影响局域网的正常运作。本文将深入探讨如何解决此类问题。遇到多数客户端无法获取IP地址或登录速度缓慢的情况,建议首先运行该系统的`ipconfig`命令检查配置设置。如果发现客户端无法从路由器获得IP地址,并排除了基本故障后,应关注路由器的状态。若交换机指示灯正常且无拥堵或死机现象,则可能与路由器的 DHCP(动态主机配置协议)服务出现故障有关。 DHCP 作为局域网中自动分配IP地址的关键组件,确保网络设备正确连接上因特网至关重要。当客户端首次接入网络时,会向 DHCP服务器发送一个 DHCP discover广播包以获取IP地址。在Windows系统中,默认情况下,若1秒内未收到响应,客户端将在几秒后尝试(共4次)。如果始终无法获得响应,将显示错误信息并提示用户等待5分钟后重新连接。当DHCP服务器无响应或未被客户端接受时,也会导致IP分配失败。深入分析 DHCP工作流程可发现潜在问题可能源于服务器未能做出适当回应或丢失了部分响应包。在确认网络硬件配置无误(如网线连通)后,问题很可能与 DHCP 服务器相关。大量客户端请求可能导致服务器资源耗尽,从而降低响应速度并引发网络拥塞现象。为提升整体服务质量,理想做法是增强服务器性能或增加服务器数量,通过专设不同功能的服务器来优化负载分配。对于预算有限的机构(如学校),购买额外设备可能不切实际,在这种情况下需要对现有架构进行优化以避免过载问题。潜在解决方案包括限制客户端连接数、调整 DHCP 租约时间或升级路由器硬件和软件性能,同时建议定期维护服务器以确保其
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值