package lianxi;
import java.util.*;
public class UnionSearch
{
public static void main(String[] args)
{
int[] array1 = {49,36,13,27,48,100,67,73,85,28,99,56};
int[] array2 = {34,45,13,67,23,56,28,90}; long mtime,etime,time;
Date myDate = new Date();
mtime = myDate.getTime();
//对数组进行快速排序
QuickSort qs = new QuickSort();
array1 = qs.quickSort(array1, 0, array1.length - 1);
array2 = qs.quickSort(array2, 0, array2.length - 1); //找两数组中的公共元素
int[] array;
array = qs.unionElment(array1, array2);
Date mydate = new Date();
etime = mydate.getTime();
time = etime - mtime;
System.out.println(mtime+" 运行时间为:"+time+" "+etime);
//打印公共元素
for(int i = 0; i < array.length;i ++)
{
if(array[i] != 0)
{
System.out.print(" ");
System.out.print(array[i]);
}
else
{
break;
}
}
} } class QuickSort
{
public int[] quickSort(int[] array,int low,int high)
{
if (low > high)
{
return null;
}
int i = low;
int j = high;
while (low < high)
{
int pivot = array[low];
while (low < high && array[high] >= pivot)
{
high --;
}
if (low < high)
{
int temp = array[low];
array[low] = array[high];
array[high] = temp;
low ++;
}
while (low < high && array[low] <= pivot)
{
low ++;
}
if (low < high)
{
int temp = array[high];
array[high] = array[low];
array[low] = temp;
high --;
}
}
quickSort(array,i,low - 1);
quickSort(array,low + 1,j);
return array;
}
public int[] unionElment(int[] array1,int[]array2)
{
int length_array1 = array1.length;
int length_array2 = array2.length;
int union_length = length_array1<length_array2?length_array1:length_array2;
int[] array = new int[union_length];
int i = 0;
int j = 0;
int k = 0;
while (i < length_array1 && j < length_array2)
{
if (array1[i] < array2[j])
{
i ++;
}
else if (array1[i] > array2[j])
{
j ++;
}
else
{
array[k] = array1[i];
i ++;
j ++;
k ++;
} }
return array;
}
}

寻找两个数组中的公共元素Java程序代码的更多相关文章

  1. php获取两个数组相同的元素(交集)以及比较两个数组中不同的元素(差集)

    (一)php获取两个数组相同元素 array  array_intersect(array  $array1, array $array2, [, array $...]) array  array_ ...

  2. 【python】Leetcode每日一题-寻找旋转排序数组中的最小元素

    [python]Leetcode每日一题-寻找旋转排序数组中的最小元素 [题目描述] 已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组.例如,原数组nums ...

  3. 【python】Leetcode每日一题-寻找旋转排序数组中的最小元素2

    [python]Leetcode每日一题-寻找旋转排序数组中的最小元素2 [题目描述] 已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组.例如,原数组nums ...

  4. C语言:返回两个数组中第一个元素的指针,并输出这个值

    // //  main.c //  Pointer_search // //  Created by ma c on 15/8/2. //  Copyright (c) 2015年. All righ ...

  5. Java如何从数组中查找公共的元素?

    在Java中,如何从数组中查找公共的元素? 示例 以下示例显示了如何从两个数组中查找公共元素并将其存储在数组中. package com.yiibai; import java.util.*; pub ...

  6. Java-Runoob-高级教程-实例-数组:14. Java 实例 – 在数组中查找指定元素

    ylbtech-Java-Runoob-高级教程-实例-数组:14. Java 实例 – 在数组中查找指定元素 1.返回顶部 1. Java 实例 - 在数组中查找指定元素  Java 实例 以下实例 ...

  7. Java-Runoob-高级教程-实例-数组:10. Java 实例 – 查找数组中的重复元素-un

    ylbtech-Java-Runoob-高级教程-实例-数组:10. Java 实例 – 查找数组中的重复元素 1.返回顶部 1. Java 实例 - 查找数组中的重复元素  Java 实例 以下实例 ...

  8. 有关《查找两个List中的不同元素》的问题解答与编程实践

     郑海波 2013-07-08 问题: 有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样查找两个集合中不同的元素呢? ...

  9. C 语言:返回两个数组中第一个相同元素的指针(我用了loop 、goto loop标签)

    // //  main.c //  Pointer_search // //  Created by ma c on 15/8/2. //  要求:通过指针查找,实现比较两个有序数组中的元素,输出两个 ...

随机推荐

  1. leetcode165. 比较版本号

    比较两个版本号 version1 和 version2.如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此之外返回 0 ...

  2. Thrift接口简介

    参考地址:http://roclinux.cn/?p=3316 [thrift是什么] 计算机技术里一款著名的通信框架 – thrift框架 thrift的全名叫做Apache thrift,是一款软 ...

  3. Java集合【6.1】-- Collection接口源码详解

    目录 一.Collection接口简介 二.Collection源码分析 三.Collection的子类以及子类的实现 3.1 List extend Collection 3.2 Set exten ...

  4. 面试官问Linux下如何编译C程序,如何回答?为你编译演示

    文章来源:嵌入式大杂烩 作者:ZhengNL Windows下常用IDE来编译,Linux下直接使用gcc来编译,编译过程是Linux嵌入式编程的基础,也是嵌入式高频基础面试问题. 一.命令行编译及各 ...

  5. mysql GTID主从复制故障后不停机恢复同步流程

    GTID实现主从复制数据同步 GTID是一个基于原始mysql服务器生成的一个已经被成功执行的全局事务ID,它由服务器ID以及事务ID组成,这个全局事务ID不仅仅在原始服务器上唯一,在所有主从关系的m ...

  6. LeetCode 045 Jump Game II

    题目要求:Jump Game II Given an array of non-negative integers, you are initially positioned at the first ...

  7. 上传视频到七牛云Django后端实现

    1.上传视频到七牛云django端实现 1.1 获取七牛云秘钥 https://portal.qiniu.com/user/key 1.2 在syl/settings.py中配置七牛云上传 参考官方 ...

  8. charles功能(五)屏蔽web网页的抓包信息(proxy)

    应用场景:屏蔽web网页的抓包信息 proxy-->windows proxy(前面没有对勾,就不会抓到 PC浏览器的包) proxy-->macOS proxy(mac电脑) 最终效果

  9. 区块链学习7:超级账本项目Hyperledger与Fabric以及二者的关系

    ☞ ░ 前往老猿Python博文目录 ░ 一.超级账本(hyperledger) 超级账本(hyperledger)是Linux基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,成员包括 ...

  10. c#如何取出指定的中间文本

    ///<summary> ///取出文本中间内容 ///<summary> ///<param name="left">左边文本</par ...