自学内容网 自学内容网

2024/10/5 数据结构打卡

对两个长度为n的升序序列A和B的元素按由小到大的顺序依次访问,这里访问的
含义只是比较序列中两个元素的大小,并不实现两个序列的合并,因此空间复杂度为 O(1)。按照
上述规则访问到第n个元素时,这个元素即为两个序列A和B的中位数。

int middle(int a[],int b[],int n)
{
    int i,j,k;
    k=1;i=0;j=0;
    while(k!=n)
    {
        if(a[i]>b[j] &&j<n)
        {
            j++;
            k++;
        }
        else if(a[i]<=b[j]&&i<n)
        {
            i++;
            k++;
        }
        
    }
    if(a[i]<b[j])
    {
        return a[i];
     } 
     else
     {
          return b[j];
     }
 } 

时间复杂度n 空间复杂度1


原文地址:https://blog.csdn.net/m0_63504902/article/details/142718075

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!