Skip to content

349. Intersection of Two Arrays

Problem Page: https://leetcode.com/problems/intersection-of-two-arrays/

#
# @lc app=leetcode id=349 lang=python3
#
# [349] Intersection of Two Arrays
#
# https://leetcode.com/problems/intersection-of-two-arrays/description/
#
# algorithms
# Easy (70.98%)
# Likes:    5261
# Dislikes: 2189
# Total Accepted:    923.3K
# Total Submissions: 1.3M
# Testcase Example:  '[1,2,2,1]\n[2,2]'
#
# Given two integer arrays nums1 and nums2, return an array of their
# intersection. Each element in the result must be unique and you may return
# the result in any order.
#
#
# Example 1:
#
#
# Input: nums1 = [1,2,2,1], nums2 = [2,2]
# Output: [2]
#
#
# Example 2:
#
#
# Input: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
# Output: [9,4]
# Explanation: [4,9] is also accepted.
#
#
#
# Constraints:
#
#
# 1 <= nums1.length, nums2.length <= 1000
# 0 <= nums1[i], nums2[i] <= 1000
#
#
#

# @lc code=start
from typing import List


class Solution:
    def intersection(self, nums1: List[int], nums2: List[int]) -> List[int]:

        # # Set solution:

        # s1 = set(nums1)
        # s2 = set(nums2)

        # return list(s1 & s2)

        # Array solution:

        size = 1001

        a1 = [0] * size
        a2 = [0] * size

        for i in nums1:
            a1[i] = 1

        for i in nums2:
            a2[i] = 1

        res = []
        for i in range(size):
            if a1[i]*a2[i] > 0:
                res.append(i)

        return res

# @lc code=end

Last update: Sep 24, 2023
Created: Sep 24, 2023

Comments