获取有序数组中最小的相同元素
第六天
题目#
获取两个有序数组的最小相同元素
输入:[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;}简单有效 无敌