searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

最小公共值-算法学习

2023-07-12 04:00:41
1
0

题目详情:
给你两个整数数组 nums1 和 nums2 ,它们已经按非降序排序,请你返回两个数组的 最小公共整数 。如果两个数组 nums1 和 nums2 没有公共整数,请你返回 -1 。

如果一个整数在两个数组中都 至少出现一次 ,那么这个整数是数组 nums1 和 nums2 公共 的。


示例:
输入:nums1 = [1,2,3], nums2 = [2,4]
输出:2
解释:两个数组的最小公共元素是 2 ,所以我们返回 2 。

解题思路:

通过使用两个指针 ij 来遍历数组 nums1nums2。开始时,将两个指针都指向数组的开头。

然后,进入循环,当其中一个指针达到数组末尾时结束循环:

  • 如果当前两个指针指向的元素相等,则找到了最小的公共整数,直接返回该元素。
  • 如果 nums1[i] 小于 nums2[j],则说明 nums1[i] 不可能是公共整数,将指针 i 向后移动一位。
  • 如果 nums1[i] 大于 nums2[j],则说明 nums2[j] 不可能是公共整数,将指针 j 向后移动一位。

最终循环结束后,如果没有找到公共整数,则返回 -1。


代码实现:

function findMinCommonElement(nums1, nums2) {
    let i = 0;
    let j = 0;

    while (i < nums1.length && j < nums2.length) {
        if (nums1[i] === nums2[j]) {
            return nums1[i];
        } else if (nums1[i] < nums2[j]) {
            i++;
        } else {
            j++;
        }
    }

    return -1;
}

// 示例输入
const nums1 = [1, 2, 3];
const nums2 = [2, 4];

// 调用函数并输出结果
console.log(findMinCommonElement(nums1, nums2));
0条评论
作者已关闭评论
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
t****m
98文章数
1粉丝数
t****m
98 文章 | 1 粉丝
原创

最小公共值-算法学习

2023-07-12 04:00:41
1
0

题目详情:
给你两个整数数组 nums1 和 nums2 ,它们已经按非降序排序,请你返回两个数组的 最小公共整数 。如果两个数组 nums1 和 nums2 没有公共整数,请你返回 -1 。

如果一个整数在两个数组中都 至少出现一次 ,那么这个整数是数组 nums1 和 nums2 公共 的。


示例:
输入:nums1 = [1,2,3], nums2 = [2,4]
输出:2
解释:两个数组的最小公共元素是 2 ,所以我们返回 2 。

解题思路:

通过使用两个指针 ij 来遍历数组 nums1nums2。开始时,将两个指针都指向数组的开头。

然后,进入循环,当其中一个指针达到数组末尾时结束循环:

  • 如果当前两个指针指向的元素相等,则找到了最小的公共整数,直接返回该元素。
  • 如果 nums1[i] 小于 nums2[j],则说明 nums1[i] 不可能是公共整数,将指针 i 向后移动一位。
  • 如果 nums1[i] 大于 nums2[j],则说明 nums2[j] 不可能是公共整数,将指针 j 向后移动一位。

最终循环结束后,如果没有找到公共整数,则返回 -1。


代码实现:

function findMinCommonElement(nums1, nums2) {
    let i = 0;
    let j = 0;

    while (i < nums1.length && j < nums2.length) {
        if (nums1[i] === nums2[j]) {
            return nums1[i];
        } else if (nums1[i] < nums2[j]) {
            i++;
        } else {
            j++;
        }
    }

    return -1;
}

// 示例输入
const nums1 = [1, 2, 3];
const nums2 = [2, 4];

// 调用函数并输出结果
console.log(findMinCommonElement(nums1, nums2));
文章来自个人专栏
js
57 文章 | 1 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0