zoukankan      html  css  js  c++  java
  • 华为上机练习题--求两个数组的总和

    题目:

    求两个数组的和差:就是去掉两个数组中同样的元素 然后将两个数组中的元素存放在一个新的数组中,且数组A中元素要在B数组元素之前

     如:输入: int[] a={1,2,4,7,6,9};
                          int[] b={2,4,3,10};

             输出: int[] c = {1, 7, 6, 9, 3, 10};


    分析: 剔除同样的元素要互相比較, 然后将不同的元素先后插入新的数组中。 所以我将重点放在比較上, 有可能效率有点低。 大家有什么好的想法能够分享下;


    代码例如以下:

    package com.wenj.test;

    import java.util.ArrayList;
    import java.util.List;

    /*
    * 求两个数组的和差:就是去掉两个数组中同样的元素 然后将两个数组中的元素存放在一个新的数组中
    *  且数组A中元素要在B数组元素之前
    */

    public class TestGetNewArr {

        public static void main(String args[]){
            int[] a={1,2,4,7,6,9};
            int[] b={2,4,3,10};
            int[] c;
            TestGetNewArr tg = new TestGetNewArr();
            c = tg.getNewArr(a, b);
            for(int i=0; i<c.length; i++){
                System.out.print(c[i] + " ");
            }
        }
        
        public int[] getNewArr(int[] a, int[] b){

            List<Integer> aL = new ArrayList<Integer>();
            for(int i=0; i<a.length; i++){//a与b的相比。同样的则不放进新的数组中
                boolean isExist = false;
                for(int j=0; j<b.length; j++){
                    if(a[i] == b[j]){
                        isExist = true;
                    }
                }
                if(!isExist){
                    aL.add(a[i]);
                }
            }
            
            for(int i=0; i<b.length; i++){
                boolean isExist = false;
                for(int j=0; j<a.length; j++){
                    if(b[i] == a[j]){
                        isExist = true;
                    }
                }
                if(!isExist){
                    aL.add(b[i]);
                }
            }
            
            int[] c = new int[aL.size()];
            for(int i=0; i<c.length; i++){
                c[i] = aL.get(i);
            }
            
            return c;
        }
    }



  • 相关阅读:
    外设驱动库开发笔记5:AD7705系列ADC驱动
    ROS+LEDE最强上网软路由
    Flume1.9.0的安装、部署、简单应用(含分布式、与Hadoop3.1.2、Hbase1.4.9的案例)
    通过 Sqoop1.4.7 将 Mysql5.7、Hive2.3.4、Hbase1.4.9 之间的数据导入导出
    Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建
    Centos7 二进制安装 Kubernetes 1.13
    Centos7 使用 kubeadm 安装Kubernetes 1.13.3
    go get获取gitlab私有仓库的代码
    Nginx设置Https反向代理,指向Docker Gitlab11.3.9 Https服务
    Docker 创建 Bamboo6.7.1 以及与 Crowd3.3.2 实现 SSO 单点登录
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5132893.html
Copyright © 2011-2022 走看看