右旋转字符串
整体反转+局部反转就可以实现反转单词顺序
151. 反转字符串中的单词
如果后续还要移除字符串中的空格,记得使用 std::istringstream 进行操作
替换数字
通过扩容,可在原字符串中操作,无需辅助空间
96. 不同的二叉搜索树
当我们拿到节点数的时候(比方说这里的N = 3),我们必然会选择用1个节点作为根节点,其余 2 个节点拿去分配。因此 1 个节点已经被确定,2 个节点没有被确定,多样性就体现在可分配的 2个节点上,按照不同的分配来形成不同的二叉搜索树
343. 整数拆分
这个实现方式要比网上那些更容易理解
63. 不同路径 II
第一行和第一列提前处理障碍物,其余部分遍历过程中再做处理
746. 使用最小花费爬楼梯
先处理掉爬楼梯,再解此题
239. 滑动窗口最大值
这道题要考虑的问题很多,要时刻注意窗口的滑动,导致某些下标对应的元素已经不在统计范围内,要在恰当时刻移除
347. 前 K 个高频元素
核心是自定义优先级队列的第三个参数,这用来优先级队列中元素的排序方式
303. 区域和检索 - 数组不可变
前缀和在涉及计算区间和的问题时非常有用
1237