哈希
11111111
冷眼观world
社畜
展开
-
【中等】统计优美子数组
使用到前缀和技巧,不过这里的前缀和统计的不是和,而是奇数的个数 如示例1: nums = [1, 1, 2, 1, 1] preOdd = [0, 1, 2, 2, 3, 4] preOdd[j] - preOdd[i] 这个式子可以得到nums在[i, j)区间中奇数的个数 然后就可以循环这个preOdd数组,双指针寻找差值为k的次数。 class Solution { private: vector<int> preOdd; public: int numberOf.原创 2022-05-29 02:15:01 · 139 阅读 · 0 评论 -
【简单】四数相加II
采用分为两组,Map 存一组,另一组和 Map 进行比对。 这样的话情况就可以分为三种: Map 存一个数组,如 A。然后计算三个数组之和,如 BCD。时间复杂度为:O(n)+O(n3),得到 O(n3). Map 存三个数组之和,如 ABC。然后计算一个数组,如 D。时间复杂度为:O(n3)+O(n),得到 O(n3). Map存两个数组之和,如AB。然后计算两个数组之和,如 CD。时间复杂度为:O(n2)+O(n2),得到 O(n2). 这里选用时间复杂度最低地第三种情况 class Solution.原创 2022-05-29 01:43:59 · 134 阅读 · 0 评论