JAVA面试题:给定两个正整数数组,返回他们的交集数组,给定的数组是已排序的。
3个回答
展开全部
public static void main(String[] args) {
int[] a={1,2,3,4,5,7,8};
int[] b={2,3,5,8,9,10};
List<Integer> list=new LinkedList<Integer>();
for(int i=0;i<a.length;i++)
for(int j=0;j<b.length;j++)
if(a[i]==b[j]){
list.add(a[i]);
}
int[] c=new int[list.size()];
for(int i=0;i<c.length;i++)
c[i]=list.get(i);
for(int i=0;i<c.length;i++)
System.out.print(c[i]+" ");
}
不管是否排序,都可以。
int[] a={1,2,3,4,5,7,8};
int[] b={2,3,5,8,9,10};
List<Integer> list=new LinkedList<Integer>();
for(int i=0;i<a.length;i++)
for(int j=0;j<b.length;j++)
if(a[i]==b[j]){
list.add(a[i]);
}
int[] c=new int[list.size()];
for(int i=0;i<c.length;i++)
c[i]=list.get(i);
for(int i=0;i<c.length;i++)
System.out.print(c[i]+" ");
}
不管是否排序,都可以。
展开全部
String s="";
private int[] main(int[] a,int[] b){
for(int i=0;i<a.length();i++){
for(int k=0;k<b.length();k++){
if(a[i]==b[k]){
s=s+a[i]+" ";
}
}
}
Sring[] ss=s.plit(" ");
if(ss.length()!=0){
int[] result=new int[ss.length()];
for(int i=0;i<ss.length();i++){
result[i]=Integer.parsInt(ss[i];
}
return result;
}else{
return new int[0];
}
}
没用编译器,直接给你写的,可能有错误,但是应该就是这样做吧;
private int[] main(int[] a,int[] b){
for(int i=0;i<a.length();i++){
for(int k=0;k<b.length();k++){
if(a[i]==b[k]){
s=s+a[i]+" ";
}
}
}
Sring[] ss=s.plit(" ");
if(ss.length()!=0){
int[] result=new int[ss.length()];
for(int i=0;i<ss.length();i++){
result[i]=Integer.parsInt(ss[i];
}
return result;
}else{
return new int[0];
}
}
没用编译器,直接给你写的,可能有错误,但是应该就是这样做吧;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
List list = new ArrayList(Arrays.asList(array1));
list.retainAll(Arrays.asList(array2));
list.retainAll(Arrays.asList(array2));
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询