标题:中位数问题
只看楼主
我是陈同学
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-10-12
结帖率:0
已结贴  问题点数:20 回复次数:3 
中位数问题
一个长度为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的中位数。
搜索更多相关主题的帖子: 中位数 空间 元素 
2016-10-12 16:14
我是陈同学
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2016-10-12
得分:0 
求大神指教
2016-10-12 16:14
蹴鞠者
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:82
专家分:134
注 册:2016-9-26
得分:10 
可以先吧两个数组合并再排序,然后a[n/2]就是要求的数,
if(n%2==0)中位数就是a[(n+1)/2]和a[(n-1)/2]
2016-10-12 16:57
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
两个指针,一个指向s1,一个指向s2
谁指向的值小谁就++
跑一半的路,就是中位数
2016-10-12 18:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-469672-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.090974 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved