LeetCode 2540.最小公共值

题目

给你两个整数数组 nums1nums2 ,它们已经按非降序排序,请你返回两个数组的 最小公共整数 。如果两个数组 nums1nums2 没有公共整数,请你返回 -1

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

思路:双序列双指针

代码

java 复制代码
class Solution {
    public int getCommon(int[] nums1, int[] nums2) {
        int n1 = nums1.length;
        int n2 = nums2.length;
        for (int i = 0, j = 0; i < n1 && j < n2;) {
            if (nums1[i] == nums2[j]) {
                return nums1[i];
            } else if (nums1[i] < nums2[j]) {
                i++;
            } else {
                j++;
            }
        }
        return -1;
    }
}

性能

时间复杂度o(min(n1,n2))

空间复杂度o(1)

相关推荐
BanyeBirth29 分钟前
C++动态规划——LIS(最长不下降子序列)
算法·动态规划
小龙报29 分钟前
《算法通关指南---C++编程篇(3)》
开发语言·c++·算法·visualstudio·学习方法·visual studio
凤山老林34 分钟前
排序算法:详解插入排序
java·开发语言·后端·算法·排序算法
豆沙沙包?1 小时前
2025年--Lc197-077. 排序链表(链表,尾插法)--Java版
java·数据结构·链表
知星小度S1 小时前
算法训练之多源BFS
算法·宽度优先
2201_758875441 小时前
LeetCode:19. 删除链表的倒数第 N 个结点
算法·leetcode·链表
Wenhao.2 小时前
LeetCode 合并K个升序链表
leetcode·链表·golang
杨福瑞2 小时前
C语言数据结构:算法复杂度(2)
c语言·开发语言·数据结构
代码不停2 小时前
Java前缀和算法题目练习
java·开发语言·算法
courniche2 小时前
分组密码常见结构简介
算法·密码学