第六天
题目
获取两个有序数组的最小相同元素
输入:[1,2,3,4,5], [3,4,5,6,7]
输出:3
思考
递归?指针?暴力解?
指针,这是不一样的双指针,两个数组分别一个指针。
因为是有序数组,可以分别从头开始遍历(如果不是有序数组也要先排序),a 若小于 b,a 指针进一位,大于情况同理。
若出现相同元素,遇到就返回
function getMinEqualItem(a, b) {
let i = 0,
j = 0;
while (i < a.length || j < b.length) {
if (a[i] === b[j]) {
return a[i];
} else if (a[i] < b[j]) {
i++;
} else {
j++;
}
}
return null;
}
简单有效 无敌