有2个数组,一个里面按次序放着0-99 另一个放着0-100 写一段代码 查找出 第二个数组中重复的那个数,要求代码写出?

解决方案 »

  1.   

    ? 好难的线程题 [J2EE / EJB / JMS]  40  lc2tp 
    04-13 22:28  0  
     管理  好难哦 不会
      

  2.   

    给你两种思路:1、后面的加起来减去前面的,就是重复的数字
    2、或者是将第二个数组排序,然后两两比较,a[i]和a[i+1]比较,就知道那个重复了
      

  3.   

    List list = new ArrayList(Arrays.asList(Arr1));   //Arr1 第一个数组
    list.retainAll(Arrays.asList(Arr2));   //Arr2 第二个数组,   list中的就是两数组相同的元素了.
      

  4.   

    另外,你还可以使用Comparable 和 Comparator。
      

  5.   

    真的很难吗?
    做一个数组不能存储重复的元素,将你所谓的数组的元素取出放到不能重复的数组里面去,当放不进去的时候记下他不就可以了吗?以下是我上次自己写的一个特殊的数组,,他里面不能存储重复的元素,还可以自动排序,删除指定位置的元素等import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.OutputStreamWriter;public class MyQueue {
    private String[] myque; public MyQueue() {
    //这里你可以设置你要这个数组的大小
    this.myque = new String[100]; } public void putString(String item) {
    String element = item;
    boolean flag = false;
    for (int i = 0; i < myque.length; i++) {
    String se=myque[i];

    if (se!= null) {
    if (se.equals(element)) {
    flag = false;
                                         //这里就可以做文章了,,
                                               //可以把这个元素打印,也可以另行处理对吧
    break;
    } } else {
    flag = true;
    }
    }
    if (flag) {
    int i;
    for (i = 0; i < myque.length; i++) {
    if (myque[i]==null) {
    myque[i] = item;
    break;
    } }
    }
    } public void sort() {
    String charge;
    int len=0;
    for(int k=0;k<myque.length;k++){
    if(myque[k]==null){
    len=k;
    break;
    }
    }
    System.out.println(len);
    for (int i = 0; i <len; i++) {
    for (int j =0; j <len-i; j++) {

                  if(myque[j]!=null&&myque[j+1]!=null)  
                  {
                   String element1=myque[j+1].trim();
    int flag = myque[j].compareTo(element1);
    if (flag >0) {
    charge = myque[j];
    myque[j] = myque[j + 1];
    myque[j + 1] = charge; }
    }
                  
    }
    }
    } public int length() {
    int len=0;
    for(int k=0;k<myque.length;k++){
    if(myque[k]==null){
    len=k;
    break;
    }
    }
    return len;
    } public String getElement(int index) {
    String element = "";
    element = myque[index];
    return element;
    } public void delete(int index) {
    int len=0;
    int i = 0;
    for(int k=0;k<myque.length;k++){
    if(myque[k]==null){
    len=k;
    break;
    }
    }
    if(index<len){
    for (i = index; i <= len - 1; i++) {
    myque[i] = myque[i + 1];
        }     }
    }
    public String getNextElement(String str){
    String element="";
    int len=0;
    for(int k=0;k<myque.length;k++){
    if(myque[k]==null){
    len=k;
    break;
    }
    }
    for(int i=0;i<len;i++){
    if(myque[i].equals(str.trim())){
    element=myque[i+1];
    break;
    }
    }
    return element;
    }

    }
      

  6.   

    你可以把数组转为set在处理。这种方法要比sky_ccy的简单.他在代码太多。我没有看
    public class Lei    
     {   
    public static void main(String[] args) {
    // TODO 自动生成方法存根
    Set set1 = new HashSet();
    Set set2 = new HashSet();
    set1.add(new Integer(2));
    set2.add(new Integer(1));
    set2.add(new Integer(2));
    List list = new ArrayList();
    for(Iterator iter = set2.iterator();iter.hasNext();){
    Integer a = (Integer)iter.next();
    if(set1.contains(a)){
    list.add(a);
    }
    }
    for(int i=0;i<list.size();i++){
    System.out.println(list.get(i));
    }
    }}