LeetCode //C - 2215. Find the Difference of Two Arrays

2215. Find the Difference of Two Arrays

Given two 0-indexed integer arrays nums1 and nums2, return a list answer of size 2 where:

  • answer[0] is a list of all distinct integers in nums1 which are not present in nums2.
  • answer[1] is a list of all distinct integers in nums2 which are not present in nums1.

Note that the integers in the lists may be returned in any order.
 

Example 1:

Input: nums1 = [1,2,3], nums2 = [2,4,6]
Output: [[1,3],[4,6]]
Explanation:
For nums1, nums1[1] = 2 is present at index 0 of nums2, whereas nums1[0] = 1 and nums1[2] = 3 are not present in nums2. Therefore, answer[0] = [1,3].
For nums2, nums2[0] = 2 is present at index 1 of nums1, whereas nums2[1] = 4 and nums2[2] = 6 are not present in nums2. Therefore, answer[1] = [4,6].

Example 2:

Input: nums1 = [1,2,3,3], nums2 = [1,1,2,2]
Output: [[3],[]]
Explanation:
For nums1, nums1[2] and nums1[3] are not present in nums2. Since nums1[2] == nums1[3], their value is only included once and answer[0] = [3].
Every integer in nums2 is present in nums1. Therefore, answer[1] = [].

Constraints:
  • 1 <= nums1.length, nums2.length <= 1000
  • -1000 <= nums1[i], nums2[i] <= 1000

From: LeetCode
Link: 2215. Find the Difference of Two Arrays


Solution:

Ideas:
  1. Create two dynamic arrays (using malloc) to store the unique elements from nums1 and nums2 that are not found in the other.
  2. Use a helper function or a simple loop to check if an element in one array is present in the other.
  3. Add the unique elements to the respective dynamic arrays.
  4. Return the dynamic arrays along with their sizes.
Code:
bool isPresent(int* array, int size, int value) {
   
    for (int i = 0; i < size; ++i) {
   
        if (array[i] == value) {
   
            return true;
        }
    }
    return false;
}

int** findDifference(int* nums1, int nums1Size, int* nums2, int nums2Size, int* returnSize, int** returnColumnSizes) {
   
    int* result1 = (int*)malloc(nums1Size * sizeof(int));
    int result1Size = 0;
    int* result2 = (int*)malloc(nums2Size * sizeof(int));
    int result2Size = 0;

    // Find unique elements in nums1
    for (int i = 0; i < nums1Size; ++i) {
   
        if (!isPresent(nums2, nums2Size, nums1[i]) && !isPresent(result1, result1Size, nums1[i])) {
   
            result1[result1Size++] = nums1[i];
        }
    }

    // Find unique elements in nums2
    for (int i = 0; i < nums2Size; ++i) {
   
        if (!isPresent(nums1, nums1Size, nums2[i]) && !isPresent(result2, result2Size, nums2[i])) {
   
            result2[result2Size++] = nums2[i];
        }
    }

    // Prepare the return values
    *returnSize = 2;
    *returnColumnSizes = (int*)malloc(*returnSize * sizeof(int));
    (*returnColumnSizes)[0] = result1Size;
    (*returnColumnSizes)[1] = result2Size;

    int** result = (int**)malloc(*returnSize * sizeof(int*));
    result[0] = result1;
    result[1] = result2;

    return result;
}

相关推荐

  1. ECMAScript2015(ES6)

    2024-01-01 20:16:02       30 阅读
  2. 力扣-2225

    2024-01-01 20:16:02       6 阅读
  3. 221. 最大正方形

    2024-01-01 20:16:02       39 阅读
  4. 225.队列实现栈

    2024-01-01 20:16:02       9 阅读
  5. 2015-2023_个人工作总结

    2024-01-01 20:16:02       16 阅读
  6. 【NOIP 2015 普及组】金币

    2024-01-01 20:16:02       22 阅读
  7. 题目 2915: 接水问题

    2024-01-01 20:16:02       16 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-01 20:16:02       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-01 20:16:02       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-01 20:16:02       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-01 20:16:02       18 阅读

热门阅读

  1. Redis常见面试题

    2024-01-01 20:16:02       31 阅读
  2. 深入理解与运用C语言中的Continue关键字

    2024-01-01 20:16:02       29 阅读
  3. 人工通用智能AGI

    2024-01-01 20:16:02       35 阅读
  4. 2023.12.30 libstdc++.so.6 GLIBCXX_3.4.32 not found

    2024-01-01 20:16:02       41 阅读
  5. git 查看最新commit提交时间(具体到时分秒)

    2024-01-01 20:16:02       37 阅读
  6. CAN,SPI,IIC,USART每帧的组成

    2024-01-01 20:16:02       36 阅读
  7. LeetCode976. Largest Perimeter Triangle

    2024-01-01 20:16:02       29 阅读
  8. Mybatis之增删改查

    2024-01-01 20:16:02       29 阅读