最新 最热

LeetCode 周赛上分之旅 #41 结合离散化的线性 DP 问题

从 1 开始从小到大枚举,如果当前元素 cur 与已选列表不冲突,则加入结果中。为了验证是否冲突,我们使用散列表在 O(1) 时间复杂度判断。

2023-09-09
1

LeetCode 周赛上分之旅 #40 结合特征压缩的数位 DP 问题

在题解一中存在很多无意义的比较,我们观察到配对的顺序是无关的,因此可以考虑利用有序性优化时间复杂度。

2023-09-09
1

【LeetCode 周赛】渐入佳境

在题解一中,我们会重复计算同一段交替子序列的,我们可以使用一次遍历,再交替子序列终止时避免重复回退到该子序列内部。需要注意的是,由于不同的交替子序列可能存在 1 位重叠,所以要把 i 指针指向 j 指针,而不是指向 j 指针...

2023-09-09
1

【LeetCode 周赛】一场关于子数组的专题周赛

容易想到的方法是枚举每个位置开始的子数组,并计算最长奇偶子数组长度,可以得到时间复杂度为 O(n^2) 的解法。

2023-09-09
1

【LeetCode 周赛】两道思维题

当相邻重复对 repeatCnt 大于 1 时,此时需要收缩左指针,如果左指针与右边后一个位置相同,说明减少一个相邻重复对(由于 repeatCnt 大于 1 时左指针不可能超过窗口,所以不需要检查左指针移动越界)。...

2023-09-09
1

Go 语言 15 个内置函数详解

Go 语言为了方便我们开发,提供了 15 个内置函数,比如 len、cap、make 和 new 等。

2023-09-08
1

【面试高频题】难度 1/5,简单双指针运用

这是 LeetCode 上的 「581. 最短无序连续子数组」 ,难度为 「中等」。

2023-09-07
1

golang源码分析:boltdb(4)

通过前面源码分析,我们差不多了解了boltdb的核心数据结构了,逻辑视图上是通过Bucket组建的嵌套结构来管理数据的,每一层都可以存储一一系列key和value,也是使用boltdb的用户需要关注的。物理视图上是通过node来定义B+树来...

2023-09-06
1

rust中的reborrow和NLL

我们知道可变引用是没有实现Copy trait的,因此,当ref1传递给add函数之后,其所有权应该被转移到add函数内,之后应该无法使用ref1,但是上面这段代码是可以编译,运行的。这是为什么呢?...

2023-09-06
1

抽象类为什么不能被实例化?

首先,语法上,抽象类不能被实例化,这是语法规定。强制实例化一个抽象类的代码,编译器会报错。

2023-09-06
1