题目:
思路:
1 Arrays.sort() 排序两个数组
2 定义双指针,和一个list 集合 访问数组相等的加入list
(一)代码
class Solution { public int[] intersect(int[] nums1, int[] nums2) { //排序 Arrays.sort(nums1); Arrays.sort(nums2); int length1 = nums1.length; int length2 = nums2.length; int p1 = 0,p2 = 0; //定义集合 List<Integer> list = new ArrayList<>(); while(p1 < length1 && p2 < length2){ if(nums1[p1] == nums2[p2]){ list.add(nums1[p1]); p1++; p2++; }else if(nums1[p1] > nums2[p2]){ p2++; }else if(nums1[p1] < nums2[p2]){ p1++; } } int[] result = new int[list.size()]; for(int i = 0 ; i < list.size() ; i++){ result[i] = list.get(i); } return result; } }
比比赖赖