1,2,3,4,5
--> 中位数为 3(第5/2大的数)
1,2,3,4
--> 中位数为 2(第4/2大的数)
两个递增序列合并之后的中位数如何计算才能让复杂度最小:
int a[M],b[N];
第一步:找出a的中位数,还有b的中位数。
第二步:
1. 如果a>b,取a左侧还有b右侧的数组元素再进行一次中位数的筛选。
2. 如果a==b,则退出。
3. 如果只剩最后一个元素,则选最小的那个。
1,2,3,4,5
--> 中位数为 3(第5/2大的数)
1,2,3,4
--> 中位数为 2(第4/2大的数)
两个递增序列合并之后的中位数如何计算才能让复杂度最小:
int a[M],b[N];
第一步:找出a的中位数,还有b的中位数。
第二步:
1. 如果a>b,取a左侧还有b右侧的数组元素再进行一次中位数的筛选。
2. 如果a==b,则退出。
3. 如果只剩最后一个元素,则选最小的那个。
本文标题:求两个序列合并后的中位数
本文链接:https://www.haomeiwen.com/subject/zohwwftx.html
网友评论