leetcode跳跃-leetcode:leetcode

时间:2024-07-20 12:50:47
【文件属性】:

文件名称:leetcode跳跃-leetcode:leetcode

文件大小:223KB

文件格式:ZIP

更新时间:2024-07-20 12:50:47

系统开源

leetcode 跳跃 字符串处理滑动窗口,定义[i,j) 左闭右开,可以向左右滑动。那么就可将复杂度大大降低,从O(N^3)下降到O(2*N),原因为每个index扫过i和j各一次。时间复杂度O(N),空间复杂度O(N). 优化滑动窗口,就是将一边不是一个一个加,是跳跃者加(容易想起跳跃表),那么就可以将复杂度的常量继续下降. 注意边界的处理. 二分复杂的O(n+m),要求复杂度log,i为数组nums1的分割,分割为nums1[i-1]和nums1[i];j为nums2的分割,分类讨论: case1: m+n长度为偶数: i + j = m - i + n - j j = (m + n) / 2 - i 中位数为:(max(A[i-1],B[j-1]) + min(A[i],B[j]))/2 case2: m+n长度为奇数,定义左半部分比右半部分多1: i + j = m - i + n - j + 1 j = (m + n + 1) / 2 - i 中位数为:max(A[i-1], B[j-1]) 回文对称性,枚举中心节点的方式来处理,复杂度O(N^2),空间复杂度O(1) 模拟


网友评论