You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
这样的话我们就可以使用双指针技巧。右指针模拟右端点,使用左指针模拟左端点了。**如果以索引 i 为右端点的子数组 0 的个数不大于 k,那么左指针 l 没必要右移,因为当前右指针 r 和所有的索引 i, 其中 l <= i <= r 的组合 0 的个数都不会大于 k,而且子数组还更短了,不可能是答案,因此我们直接右移右指针,这是算法的关键**。通过这种方式算法的时间复杂度可从 $O(n^2)$ 降低到 $n$。
81
+
这样的话我们就可以使用双指针技巧。右指针模拟右端点,使用左指针模拟左端点了。**如果以索引 i 为右端点的子数组 0 的个数不大于 k,那么左指针 l 没必要右移,因为当前右指针 r 和所有的索引 i, 其中 l <= i <= r 的组合 0 的个数都不会大于 k,但是子数组还更短了,不可能是答案,因此我们直接右移右指针,这是算法的关键**。通过这种方式算法的时间复杂度可从 $O(n^2)$ 降低到 $n$。
0 commit comments