面试碰到这个题了,感觉挺有意思,回来仔细琢磨了一下,具体代码实现如下:
var a1=[1,4,7,9,10]
var a2=[2,3,6,8]
var a3=[]
var j = 0
var i = 0
var l1 = a1.length
var l2 = a2.length
var loop = function () {
if (a1[j] < a2[i]) {
a3.push(a1[j])
j++
if (j < l1) {
loop()
} else {
a3 = a3.concat(a2.slice(i, l2))
}
} else {
a3.push(a2[i])
i++
if (i < l2) {
loop()
} else {
a3 = a3.concat(a1.slice(j, l1))
}
}
}
loop()