leetcode进阶知识点

线段树:区间分段管理,层层归并上报。(和归并算法和区间DP有点像)
线段树的逻辑结构:每个叶子节点是元素的状态,非叶子节点是区间的状态。
线段树的存储结构:
数组存储线段树,约束左右子节点的存储位置(pos是当前节点的索引)

leftPos = 2 * pos + 1
rightPos = 2 * pos + 2

覆盖范围

左子节点:[left, (left + right)/2]
右子节点:[(left + right)/ 2 + 1, right]

线段树的操作,update/query
update:递归更新到子节点,递归完成后更新当前节点
query:递归到子区间,完成后归并

线段树update的lazy化,在query的时候再更新

博弈类问题,dp表示当前操作者的最佳结果。
做出选择,观察下个玩家的最佳结果,采取最有利于自己的选择。

中位数应用,求解

质数筛(因数分解)

整数和质数都可以压缩数据空间,可以用来枚举

逆元

表达式整理,变形,数形结合

快速幂

均值不等式
在这里插入图片描述

不等式
在这里插入图片描述

公式整理套路:
a.等号左右拼凑不同元素。
b.除号左右拼凑不同元素
c.除号上下拼凑不同元素

所有子串的遍历操作,固定第一个字符,不断向后扩展长度

编程解决几何问题

图中n个点,最少的联通所有点的边数n-1
边的最多n^2数量级

元素聚集成孤岛,孤岛整体处理

使用多个treeset维持大小固定的有序集合

动态维护有序元素集合,集合里面的元素有变化时要重新排序,利用平衡树更加高效

抓住特征点。

如何判断特征点最优?

假设特征点不是最有,那么存在一个更优的序列。
证明特征点能达成不比该序列差的效果。

计数模型,抽象自序号模型

贡献元素模型

可信路径搜索

常用的路径搜索影响因素:当前位置,剩余操作约束,已检索路径。

解决问题Q,最少需要多少资源。 反过来思考 :假设有X资源可以解决什么样的问题。
人类倾向于思考A导致什么样的结果。A可以做什么样的事。不擅长思考已经发生了B,什么会导致B。要做成B,需要什么条件?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值