Java
public class Solution {
public int[] intersect(int[] nums1, int[] nums2) {
ArrayList tmp=new ArrayList();
Arrays.sort(nums1);
Arrays.sort(nums2);
int i = 0;
int j = 0;
while (i < nums1.length && j < nums2.length){
if (nums1[i] < nums2[j]) {
i++;
} else if (nums1[i] > nums2[j]) {
j++;
} else {
tmp.add(nums1[i]);
i++;
j++;
}
}
int size=tmp.size();
int[] result=new int[size];
for(int k=0;k<size;k++)
{
result[k]=(int)tmp.get(k);
}
return result;
}
}
Javascript
/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number[]}
*/
var intersect = function(nums1, nums2) {
var result=[];
var k=0;
nums1.sort(function(a,b){return a-b;});
nums2.sort(function(a,b){return a-b;});
var i = 0;
var j = 0;
while (i < nums1.length && j < nums2.length) {
if (nums1[i] < nums2[j]) {
i++;
} else if (nums1[i] > nums2[j]) {
j++;
} else {
result[k++]=nums1[i];
i++;
j++;
}
}
return result;
};
优解,和Java差不多
网友评论