首页 > 其他分享 >leetcode-349. 两个数组的交集

leetcode-349. 两个数组的交集

时间:2023-05-09 13:23:19浏览次数:28  
标签:set 交集 IEnumerable 349 element second 数组 leetcode

return nums1.Intersect(nums2);

题意:给定两个数组,编写一个函数来计算它们的交集。 c#可以用linq自带的方法返回,顺便看了下微软的内部实现:

private static IEnumerable<TSource> IntersectIterator<TSource>(IEnumerable<TSource> first, IEnumerable<TSource> second, IEqualityComparer<TSource>? comparer)
        {
            var set = new HashSet<TSource>(second, comparer);
 
            foreach (TSource element in first)
            {
                if (set.Remove(element))
                {
                    yield return element;
                }
            }
        }

 

标签:set,交集,IEnumerable,349,element,second,数组,leetcode
From: https://www.cnblogs.com/Insist-Y/p/17384578.html

相关文章

  • #yyds干货盘点# LeetCode面试题:不同的二叉搜索树 II
    1.简述:给你一个整数 n ,请你生成并返回所有由 n 个节点组成且节点值从 1 到 n 互不相同的不同 二叉搜索树 。可以按 任意顺序 返回答案。 示例1:输入:n=3输出:[[1,null,2,null,3],[1,null,3,2],[2,1,3],[3,1,null,null,2],[3,2,null,1]]示例2:输入:n=1输出:[[1]]2.代......
  • #yyds干货盘点# LeetCode程序员面试金典:跳跃游戏 II
    题目:给定一个长度为 n 的 0索引整数数组 nums。初始位置为 nums[0]。每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i+j] 处:0<=j<=nums[i] i+j<n返回到达 nums[n-1] 的最小跳跃次数。生成的......
  • 2023-05-08:我们定义了一个函数 countUniqueChars(s) 来统计字符串 s 中的唯一字符, 并
    2023-05-08:我们定义了一个函数countUniqueChars(s)来统计字符串s中的唯一字符,并返回唯一字符的个数。例如:s="LEETCODE",则其中"L","T","C","O","D"都是唯一字符,因为它们只出现一次,所以countUniqueChars(s)=5。本题将会给你一个字符串s,我们需要返回countUnique......
  • LeetCode198. 打家劫舍
    classSolution{public:intf[110],g[110];//分别表示第i个房屋偷,不偷的最大价值introb(vector<int>&nums){intn=nums.size();for(inti=1;i<=n;i++){g[i]=max(f[i-1],g[i-1]);f[i]=g[i-1]+nums[i-1];......
  • leetcode 101 对称二叉树 Simple
    题目给你一个二叉树的根节点root,检查它是否轴对称。输入:root=[1,2,2,3,4,4,3]输出:true输入:root=[1,2,2,null,3,null,3]输出:false题解考察二叉树的遍历,使用广度优先BFS方法.BFS的关键在于使用队列,遍历树时,读到的节点先入队,再出队,出队时读取值,放入结......
  • LeetCode 473 火柴拼正方形
    LeetCode|473.火柴拼正方形你将得到一个整数数组matchsticks,其中matchsticks[i]是第i 个火柴棒的长度。你要用所有的火柴棍 拼成一个正方形。你不能折断任何一根火柴棒,但你可以把它们连在一起,而且每根火柴棒必须使用一次。如果你能使这个正方形,则返回true,否则返......
  • LeetCode 周赛 344(2023/05/07)手写递归函数的固定套路
    本文已收录到AndroidFamily,技术和职场问题,请关注公众号[彭旭锐]提问。大家好,我是小彭。今天下午有力扣杯战队赛,不知道官方是不是故意调低早上周赛难度给选手们练练手。往期周赛回顾:LeetCode单周赛第343场·结合「下一个排列」的贪心构造问题周赛概览T1.找出不......
  • LeetCode 15. 三数之和
    题目链接:LeetCode15.三数之和题意:在给定的数组中,找出三个数(三个数不重复)使得他们相加的和为0,同时答案中不能有重复的答案解题思路:完整代码如下://双指针做法首先要有序//解法一最优解,双指针+排序functhreeSum(nums[]int)[][]int{varres[][]intsor......
  • LeetCode 18. 四数之和
    题目链接:LeetCode18.四数之和题意:本题思路与LeetCode15.三数之和思路完全一样,只是多加了一层for循环解题思路:完整代码如下:funcfourSum(nums[]int,targetint)[][]int{//四元组,四个元素都不相同,并且结果要去重varres[][]intsort.Ints(nums)......
  • LeetCode 383. 赎金信
    题目链接:LeetCode383.赎金信题意:给你两个字符串:ransomNote和magazine,判断ransomNote能不能由magazine里面的字符构成。解题思路:首先利用map记录magazine中所有出现的字母,key是单个字母,value是该字母出现的次数,然后遍历ransomNote,检查当前字母在magazine中是......