求两个有序数组的中位数
给出a b两个有序数组,已按从小到大排序排好,长度均为2n,求两个数组合并后的中位数。
采用二分的方法,同时二分两个数组来寻找中位数,复杂度为log(2n)。
规定A数组下标为0到2n-1,B数组也是。定义查询范围la=0,ra=2n-1;lb=0,rb=2n-1;
反复判断a[amid]和b[bmid]的大小。
amid=(la+lb)/2;bmid=(ra+rb)/2;
1.如果ra==la
原创
2017-04-05 22:07:44 ·
266 阅读 ·
0 评论