![](https://i-blog.csdnimg.cn/blog_migrate/5252ac74382608dc720e56c99a22c898.png)
public int[] Intersect(int[] nums1, int[] nums2) {
//先把两个数组都进行排序
Array.Sort(nums1);
Array.Sort(nums2);
int i = 0, j = 0;
List<int> childArray = new List<int>();
while (i < nums1.Length && j < nums2.Length)
{
if (nums1[i] < nums2[j])
{
//i指向的值小于j指向的值,那么i向后移动一位
i++;
}else if (nums1[i] > nums2[j])
{
//i指向的值大于j指向的值,那么j向后移动一位
j++;
}
else
{
// 如果相同,那么意味着找到一个子集中的元素,那么i和j都向后移动一位
childArray.Add(nums1[i]);
i++;
j++;
}
}
return childArray.ToArray();
}