题目概述
解题思路
维护两个指针i,j,分别用于遍历两个数组A和B。根据题意,当A[i] > B[j]时,i ++,若i同时与j相等,则j ++;否则j++。
方法性能
O(max(M, N))时间复杂度:
示例代码
class Solution {
public:
int maxDistance(vector<int>& nums1, vector<int>& nums2)
{
int len_A = nums1.size(),
len_B = nums2.size();
int i = 0, j = 0, res = 0;
while(i < len_A && j < len_B)
{
if(nums1[i] > nums2[j])
{
if(i == j)
j++;
i++;
}
else
{
res = max(res, j - i);
j++;
}
}
return res;
}
};