2
给定一个有N个整数的排序数组,我需要找到具有不同索引(i!=j)
的所有对。我需要(j>i)
中所有配对中的最大值(a[j]+a[i]-1)
和最小值(a[j]-a[i]+1)
。数字不是唯一的,但它们的配对是允许的。数字不能与自己配对。查找数组中的MIN MAX对
我在做什么现在:
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
MAX= max(MAX,a[j] + a[i] -1);
MIN=min(MIN,a[j]-a[i]+1);
}
}
这给Ø的时间复杂度(N^2)。有没有办法将它减少到O(nlogn)甚至更少?
感谢您的帮助。我现在明白了。 – sammy