k-th smallest of two arrays (not finished yet)
by podlipensky
JavaScript
var a = [1, 2, 8, 10],
b = [9, 10, 10, 11],
k = 5;
var la = 0, lb = 0,
ra = a.length-1, rb = b.length-1;
var i = 100;
debugger;
while(la <= ra && lb <= rb){
var ma = la + ((ra-la) >> 1);
var mb = lb + ((rb-lb) >> 1);
if(a[ma] < b[mb]){
k -= ((ra-la) >> 1) + 1;
la = ma + 1;
rb = mb;
} else {
k -= ((rb-lb) >> 1) + 1;
ra = ma;
lb = mb + 1;
}
i--;
}
console.log(Math.min(a[ma], b[mb]));