题目描述:

  将两个整型数组按照升序合并,并且过滤掉重复数组元素

输入:

  输入说明,按下列顺序输入:
    1 输入第一个数组的个数
    2 输入第一个数组的数值
    3 输入第二个数组的个数
    4 输入第二个数组的数值

输出:

  输出合并之后的数组

输入样例:

  3 1 2 5 4 -1 0 3 2

输出样例:

  -101235

思路:

先将两个数组合并到一个中,然后对这个完整的数组进行排序,最后剔除重复的数据并输出

 import java.util.Scanner;

 public class ArrayMerge {

     public static void main(String[] args) {
//输入,按输入的标准输入两个数组的数据
Scanner cin = new Scanner(System.in) ;
int len1 = cin.nextInt() ;
if(len1 < 1){
System.exit(-1);
}
int [] arr1 = new int [len1] ;
for(int i = 0 ; i < len1 ; i++){
arr1[i] = cin.nextInt() ;
}
int len2 = cin.nextInt() ;
if(len2 < 1){
System.exit(-1);
}
int [] arr2 = new int [len2] ;
for(int i = 0 ; i < len2 ; i++){
arr2[i] = cin.nextInt() ;
}
cin.close() ; System.out.print(intArrayMergeASC(arr1,arr2)) ;
} /**
* 进行合并,然后将输出结果存放到一个字符串中返回
* @param arr1
* @param arr2
* @return
*/
private static String intArrayMergeASC(int[] arr1, int[] arr2) {
//将两个数组合并到一个较大的数组中
int [] total = new int [arr1.length + arr2.length] ;
for(int i = 0 ; i < arr1.length ; i++){
total[i] = arr1[i] ;
}
for(int i = 0 ; i < arr2.length ; i++){
total[i+arr1.length] = arr2[i] ;
}
//对合并后的数组排序
sort(total) ;
//保存在结果在字符串中
String res = total[0]+"" ;
int last = total[0] ;
for(int i = 1 ; i < total.length ; i++){
//不相同的则添加到字符串中,相同的则直接下一个
if(total[i] != last){
last = total[i] ;
res += total[i] + "" ;
}
} return res; } /**
* 简单选择排序算法对数组进行排序
* @param arr
*/
private static void sort(int[] arr) {
int min ;
int index ;
for(int i = 0 ; i < arr.length-1 ; i++){
min = arr[i] ;
index = i ;
for(int j = i+1 ; j < arr.length ; j++){
if(min > arr[j]){
min = arr[j] ;
index = j ;
}
}
if(index != i){
arr[index] = arr[i] ;
arr[i] = min ;
}
}
} }

Code

华为OJ平台——整形数组合并的更多相关文章

  1. 华为OJ平台试题 ——数组:整形数组合并

    代码: /* * 将两个整型数组依照升序合并,而且过滤掉反复数组元素 */ #include <stdio.h> #define N 256 #define M 512 /* * 合并数组 ...

  2. 华为OJ平台试题 —— 数组:输入n个整数,输出当中最小的k个

    输入n个整数.输出当中最小的k个: 代码: /*  * 输入n个整数,输出当中最小的k个.  * 输入说明:1.输入两个整数:2.输入一个整数数组  * 输出说明:输出一个整数数组  */ <p ...

  3. 华为OJ平台——字符串分隔

    题目描述: 连续输入字符串,请按长度为8拆分每个字符创 后输出到新的字符串数组: 长度不是8整数倍的字符串请在后面补数字0,空字符串不处理 输入 连续输入字符串(输入两次,每个字符长长度小于100)输 ...

  4. 华为OJ平台——输出最小的k个数

    输入n个整数,输出其中最小的k个. 详细描述: 接口说明 原型: bool GetMinK(unsignedint uiInputNum, int *pInputArray, unsignedint ...

  5. 华为OJ平台——矩阵乘法

    题目描述: 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C. 输入: 1.第一个矩阵的行数 2.第一个矩阵的列数(也是第二个矩阵的行数) 3.第二个矩阵 ...

  6. 华为OJ平台——密码强度等级

    题目描述: 密码按如下规则进行计分,并根据不同的得分为密码进行安全等级划分. 一.密码长度: 5 分: 小于等于4 个字符 10 分: 5 到7 字符 25 分: 大于等于8 个字符 二.字母: 0  ...

  7. 华为OJ平台——求最大连续bit数

    题目描述: 求一个byte数字对应的二进制数字中1的最大连续数,例如3的二进制为00000011,最大连续2个1 输入: 一个byte型的数字    输出: 对应的二进制数字中1的最大连续数 思路: ...

  8. 华为OJ平台——统计字符串中的大写字母

    题目描述: 统计字符串中的大写字母的个数 输入: 一行字符串 输出: 字符串中大写字母的个数(当空串时输出0) 思路: 这一题很简单,直接判断字符串中的每一个字符即可,唯一要注意的一点是输入的字符串可 ...

  9. 华为OJ平台——将真分数分解为埃及分数

    题目描述: 分子为1的分数称为埃及分数.现输入一个真分数(分子比分母小的分数,叫做真分数),请将该分数分解为埃及分数.如:8/11 = 1/2+1/5+1/55+1/110. 输入: 输入一个真分数, ...

随机推荐

  1. $.getJSON 返回值、AJAX异步调用步骤

    //首先要判断用户录入的手机号是不是中国移动的,不是直接给出提示,并终止登录 if($("#cmUsername1").val().isMobile())//手机号码 { jQue ...

  2. Servlet细节

    Servlet细节 线程不安全的做法: * 不要在Servlet中创建成员!创建局部变量即可! * 可以创建无状态成员! * 可以创建有状态的成员,但状态必须为只读的!(不提供set方法) 1.Ser ...

  3. Spark MLlib知识点学习整理

    MLlib的设计原理:把数据以RDD的形式表示,然后在分布式数据集上调用各种算法.MLlib就是RDD上一系列可供调用的函数的集合. 操作步骤: 1.用字符串RDD来表示信息. 2.运行MLlib中的 ...

  4. Workflow_如何处理标准异常和自定义异常(案例)

    2014-05-31 Created By BaoXinjian

  5. Codeforces Round #369 (Div. 2) C. Coloring Trees(dp)

    Coloring Trees Problem Description: ZS the Coder and Chris the Baboon has arrived at Udayland! They ...

  6. c++学习-特殊类成员

    静态变量: #include<iostream> #include<string> #include <typeinfo> using namespace std; ...

  7. 保存恢复临时信-Android 中使用onSaveInstanceState和onRestoreInstanceState

    在Activity中,有两个方法用于临时保存.恢复状态信息,这两个方法是: public void onSaveInstanceState(Bundle savedInstanceState); pu ...

  8. ice介绍 z

    什么是ICE(Internet Communications Engine)呢,它是由Zeroc公司开 发的一套开源中间件系统,与DCOM,CORBA,WEB SERVICEDcom类似,支持RPC( ...

  9. js实现加减乘除

    /** ** 除法函数,用来得到精确的除法结果 ** 说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显.这个函数返回较为精确的除法结果. ** 调用:accDiv(arg ...

  10. mybatis的增删改查

    一.配置文件方式 mapper.xml: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...