Find intersection of two sorted arrays
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Find intersection of two sorted arrays相关的知识,希望对你有一定的参考价值。
共有三种思路。
哈希表。
将较小的那个数组中的所有元素存在哈希表中。然后依次验证另一个数组中的数字是否有出现过。时间复杂度O(m + n),空间复杂度O(min(m, n))
二分搜索法
将较小的那个数组中的每一个元素,都用二分搜索的方法在较大数组中验证是否出现过。当两个数组大小相差很大时,这种方法会很快。
时间复杂度O(min(mlogn, nlogm)), 空间复杂度O(1)。
两个指针
指针i指向一个数组,指针j指向另一个数组。如果i < j,则i++;如果j < i,则j++;如果i = j,则将这个数存入结果,并将两个指针都加一。
时间复杂度O(m + n), 空间复杂度O(1)。
以上是关于Find intersection of two sorted arrays的主要内容,如果未能解决你的问题,请参考以下文章
349. Intersection of Two Arrays
349. Intersection of Two Arrays
160. Intersection of Two Linked Lists
LeetCode:Intersection of Two Arrays