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. 浅谈树链剖分 F&Q

    这是一篇迟来的博客,由于我懒得写文章,本篇以两个问题阐述笔者对树链剖分的初步理解. Q1:树链剖分解决什么问题? 树链剖分,就是把一棵树剖分成若干连续的链,将这些链里的数据映射在线性数组上维护.比方说 ...

  2. 基于Docker搭建pypi私有仓库

    一.搭建 1.准备htpasswd.txt文件 该文件内容包含上传包至仓库时验证的用户名和密码 pip install htpasswd htpasswd -sc htpasswd.txt <u ...

  3. 针对五款IPA文件安装工具的深度评测

    IPA是Apple程序应用文件iPhoneApplication的缩写,在日常中我们可以通过把IPA文件直接安装到iPhone手机来使用,故此笔者针对目前几种比较认可的方式做了对比,评测一下到底那款工 ...

  4. moviepy音视频剪辑VideoClip类to_ImageClip方法使用注意事项

    ☞ ░ 前往老猿Python博文目录 ░ moviepy音视频剪辑VideoClip类to_ImageClip方法将剪辑对应时刻t的帧转换成ImageClip图像剪辑,图像剪辑是所有帧都是固定图像数据 ...

  5. MySQL-索引分类及使用索引

    1.什么是索引? 索引:存储引擎用于快速找到记录的一种数据结构,默认使用B-Tree索引.索引是存储引擎层中实现.简单理解为:排好序的快速查找数据结构 索引的目的:提高数据查询的效率,优化查询性能,就 ...

  6. 跨国合作:Serverless Components 在腾讯云的落地和实践

    导语 | Serverless Components 是 Serverless Framework 推出的最新解决⽅案,具有基础设施编排能⼒,开发者通过使⽤ Serverless Components ...

  7. 补:冲刺Day1

    各个成员在 Alpha 阶段认领的任务: 任务 执行人 用户模块 高嘉淳 订单模块 覃泽泰 商品模块 莫政.卢耀恒 充值模块 卢耀恒 前端界面设计&代码 许梓莹.梁小燕 发布博客 莫政 明日各 ...

  8. 【学习笔记】K-D tree 区域查询时间复杂度简易证明

    查询算法的流程 如果查询与当前结点的区域无交集,直接跳出. 如果查询将当前结点的区域包含,直接跳出并上传答案. 有交集但不包含,继续递归求解. K-D Tree 如何划分区域 可以借助下文图片理解. ...

  9. (干货)构建镜像之Dockerfile

    Dockerfile是一个文本文件,记录了镜像构建的所有步骤. 饭提示:学习Dockerfile构建镜像,就是在学习Dockerfile文件构建的命令+shell脚本语句 Dockerfile简单介绍 ...

  10. Css:常用的去除默认样式

    *{   padding: 0;   margin: 0; } ul,ol{   list-style: none; } a,a:hover,a:link,a:visited,a:active{    ...