문제 해결 기록: 해시 테이블의 간단한 적용 --- 2540. 최소 공통 값

두 개의 정수 배열이  nums1있고  nums2 내림차순으로 정렬되지 않은 경우 두 배열 중 가장 작은 공통 정수를 반환하십시오  . 두 배열 합계에  공통 정수가 nums1없으면  nums2 반환하십시오  -1 .

 정수 는 배열  이며  두 배열 모두에서 한 번 이상 발생 하면 공통입니다  .nums1nums2 

예 1:

입력: nums1 = [1,2,3], nums2 = [2,4]
 출력: 2
 설명: 두 배열의 가장 작은 공통 요소는 2이므로 2를 반환합니다.

예 2:

입력: nums1 = [1,2,3,6], nums2 = [2,3,4,5]
 출력: 2
 설명: 두 배열의 공통 요소는 2와 3이고 2가 더 작은 값이므로 반환 2 .

아이디어: 두 개의 목록을 병합하고 해시 테이블로 계산하고 최소 공통 솔루션 출력

class Solution:
    def getCommon(self, nums1: List[int], nums2: List[int]) -> int:
        nums1 = list(set(nums1))
        nums2 = list(set(nums2))
        num = nums1 + nums2
        # print(num)
        nums = Counter(num)
        ans = []
        for k , v in nums.items():
            if v >= 2:
                ans.append(k)
        return min(ans) if ans else -1
        # print(ans)
        # return min(ans)
        # return min(ans) if value == 2 else -1

추천

출처blog.csdn.net/weixin_45314061/article/details/131815193