Skip to content

Commit 3ab9bbe

Browse files
author
robot
committed
2 parents 96bcf8d + 4d975b8 commit 3ab9bbe

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ leetcode 题解,记录自己的 leetcode 解题之路。
471471
- [0493. 翻转对](./problems/493.reverse-pairs.md)
472472
- [0664. 奇怪的打印机](./problems/664.strange-printer.md)
473473
- [0679. 24 点游戏](./problems/679.24-game.md)
474-
- [0715. Range 模块](./problems/715.range-module.md)
474+
- [0715. Range 模块](./problems/715.range-module.md) 👍
475475
- [0726. 原子的数量](./problems/726.number-of-atoms.md)
476476
- [0768. 最多能完成排序的块 II](./problems/768.max-chunks-to-make-sorted-ii.md) 91
477477
- [0805. 数组的均值分割](./problems/805.split-array-with-same-average.md)

problems/715.range-module.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ class RangeModule(object):
8888

8989
但其实这种做法 overlap 的时间复杂度是 $O(N)$,这部分可以优化。优化点点在于 overlap 的实现,实际上被跟踪的区间是有序的,因此这部分其实也可是二分查找。只不过我写了一半就发现不好根据结束时间查找。
9090

91-
参考了 [这篇题解](https://leetcode.com/problems/range-module/discuss/244194/Python-solution-using-bisect_left-bisect_right-with-explanation "Python solution using bisect_left, bisect_right with explanation") 后发现,其实我们可以将被跟踪的区块一维化处理,这样问题就简单了。比如我们不这样记录被跟踪的区间 [(1,2),(3,6),(8,12)],而是这样:[1,2,3,5,8,12]
91+
参考了 [这篇题解](https://leetcode.com/problems/range-module/discuss/244194/Python-solution-using-bisect_left-bisect_right-with-explanation "Python solution using bisect_left, bisect_right with explanation") 后发现,其实我们可以将被跟踪的区块一维化处理,这样问题就简单了。比如我们不这样记录被跟踪的区间 [(1,2),(3,5),(8,12)],而是这样:[1,2,3,5,8,12]
9292

9393
经过这样的处理, 数组的奇数坐标就是区间的结束点,偶数坐标就是开始点啦。这样二分就不需要像上面一样使用元组,而是使用单值了。
9494

0 commit comments

Comments
 (0)