希望哪位仁兄给出完整程序.想好好研究.书上的都是算法,有点摸不着头脑.

希望哪位仁兄给出完整程序.想好好研究.书上的都是算法,有点摸不着头脑.
一个长度为L(L≥1)的升序序列S,处在个位置的数为S的中位数.例如,若序列S1=(11,13,15,17,19),则S1的中位数是15,.两个序列的中位数是含它们所有元素的升序序列的中位数.例如,若S2=(2,4,6,8,20),则S1和S2的中位数是11.现有两个等长升序序列A和B,试设计一个时间和空间两方面尽可能高效的算法,找出两个序列A和B的中位数.
adayz7 1年前 已收到1个回答 举报

默默涵涵 幼苗

共回答了20个问题采纳率:80% 举报

#include "stdio.h"
int search_m(int *a,int *b,int n)
{
int s1,s2,d1,d2,m1,m2;
s1=0;
s2=0;
d1=d2=n-1;
while(s1!=d1||s2!=d2)
{
m1=(s1+d1)/2;
m2=(s2+d2)/2;
if (a[m1]==b[m2])
{
return a[m1];
}
if (a[m1]

1年前

3
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 2.331 s. - webmaster@yulucn.com