当前位置: 代码迷 >> J2SE >> 输出两个数组的相同元素(用最优算法),该怎么处理
  详细解决方案

输出两个数组的相同元素(用最优算法),该怎么处理

热度:58   发布时间:2016-04-24 01:14:44.0
输出两个数组的相同元素(用最优算法)
给定两个数组:
int m[];
int n[];

请直接贴代码,谢谢。

------解决方案--------------------
还记得list吗。还记得list的相关操作吗?

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Test {
public static void main(String[] args) {
List<Integer> list1 = Arrays.asList(1,2,5,7,8,3,12);
List<Integer> list2 = Arrays.asList(1,2,6,7,9,3,12);
List<Integer> list = new ArrayList<Integer>();
list.addAll(list1);
list.retainAll(list2);
System.out.println(list);
}
}
输出结果:
[1, 2, 7, 3, 12]

------解决方案--------------------
好吧。我也这种说服力不强。理论上是可以喜欢m+n;
加入上面是Integer数组.
Java code
public class SleepTest {    public static void main(String[] args) throws InterruptedException {        int[] result = new int[Integer.MAX_VALUE];        Integer[] a = {1, 2, 3, 4, 5};        Integer[] b = {3, 4, 5, 6, 7};        for(int i=0;i<a.length;i++){            result[a[i]]=1;        }        for(int i=0;i<b.length;i++){            if(result[b[i]]==1){            System.out.print(b[i]);                }        }    }}
  相关解决方案