import java.util.Arrays;

/**
* Created by ccc on 16-4-27.
*/
public class Test {
public static void main(String arg[]) {
int[] a = new int[]{, , };
int[] b = new int[]{,,,, , };
Arrays.sort(a);
Arrays.sort(b);
int len = a.length;
for (int i = ; i < len; i++) {
if (Arrays.binarySearch(b, a[i]) >= ) {
System.out.println(b[i]);
}
}
} }

Arrays.binarySearch();的用法。

public static int binarySearch(Object[] a,Object key)
     使用二分搜索法来搜索指定数组,以获得指定对象。在进行此调用之前,     必须根据元素的自然顺序对数组进行升序排序(通过 sort(Object[]) 方     法     )。如果没有对数组进行排序,则结果是不确定的。(如果数组包     含不可相互比较的元素(例如,字符串和整数),则无法 根据其元素的自     然顺序对数组进行排序,因此结果是不确定的。)如果数组包含多个等于     指定对象的元素,则无法保证找到的是哪一个。

参数:
      a - 要搜索的数组
      key - 要搜索的值

返回:
     如果它包含在数组中,则返回搜索键的索引;否则返回 (-(插入点) - 1)

。插入点 被定义为将键插入数组的那一点:即第一       个大于此键的

元素索引,如果数组中的所有元素都小于指定的键,则为 a.length。注意     ,这保证了当且仅当此键被找到时,返回的值将 >= 0。

否则返回 (-(插入点) - 1)这句话要注意:要是查询的的值小于数组里面

的最小值那么结果(-(0)-1结果就是-1),如果查询的 值大于数组里面的       最大值。那么结果就是(-(它的索引值)-1结果就是-(1+索引值))

抛出: 
    ClassCastException - 如果搜索的键不能与数组的元素进行比较。

对已有的2个一维数组,譬如说A[],B[],经过最少循环找出2个数组重复的元素。的更多相关文章

  1. FCC JS基础算法题(5):Return Largest Numbers in Arrays(找出多个数组中的最大数)

    题目描述: 找出多个数组中的最大数右边大数组中包含了4个小数组,分别找到每个小数组中的最大值,然后把它们串联起来,形成一个新数组.提示:你可以用for循环来迭代数组,并通过arr[i]的方式来访问数组 ...

  2. 找出numpy array数组的最值及其索引

    在list列表中,max(list)可以得到list的最大值,list.index(max(list))可以得到最大值对应的索引 但在numpy中的array没有index方法,取而代之的是where ...

  3. Class 找出一个整形数组中的元素的最大值

    目的:找出一个整形数组中的元素的最大值   以下,我们用类和对象的方法来做.   #include<iostream> using namespace std; class Array_m ...

  4. leetcode 4 : Median of Two Sorted Arrays 找出两个数组的中位数

    题目: There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the ...

  5. 最接近的三数之和(给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数, 使得它们的和与 target 最接近。返回这三个数的和)

    例如,给定数组 nums = [-1,2,1,-4], 和 target = 1. 与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2). 思路:首先对数组进行排序     ...

  6. 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。 你可以假设 nums1 和 nums2 不会同时为空。

    class Solution { public double findMedianSortedArrays(int[] A, int[] B) { int m = A.length; int n = ...

  7. majority element(数组中找出出现次数最多的元素)

    Given an array of size n, find the majority element. The majority element is the element that appear ...

  8. LeetCode练习4 找出这两个有序数组的中位数

    给定两个大小为 m 和 n 的有序数组 nums1 和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 你可以假设 nums1 和 nums2  ...

  9. 找出数组中求和等于y的所有子数组

    算法记录: 给定一个数组x,每个元素都是正整数,找出其中满足条件"求和等于y"的所有子数组.(简化问题,每个元素都不相等) x=[x1,...,xn],暴力搜索,复杂度O(2^n) ...

随机推荐

  1. javaScript中的数据类型

    一.综述 javaScript中的数据类型分为两类: 简单类型:Boolean,Number,String 引用类型:Object 其他:undefined代表变量没有初始化,null代表引用类型为空 ...

  2. MYBATIS报ORA-01745: 无效的主机/绑定变量名 异常

    异常:Cause: java.sql.SQLSyntaxErrorException: ORA-01745: 无效的主机/绑定变量名 原因,sql语句中,两个填充变量间没有写逗号.

  3. strip和stripe

  4. docker note

    docker --bip="10.1.42.1/16" -d 挂载宿主机目录 Docker支持挂载宿主机目录,支持宿主机目录和容器之间文件目录进行映射,彼此共享: docker r ...

  5. Java基础之写文件——从多个缓冲区写(GatheringWrite)

    控制台程序,使用单个写操作将数据从多个缓冲区按顺序传输到文件,这称为集中写(GatheringWrite)操作.这个功能的优势是能够避免在将信息写入到文件中之前将信息复制到单个缓冲区中.从每个缓冲区写 ...

  6. java io读书笔记(6) Writing Arrays of Bytes

    显而易见,一次性写出一堆数据,要比一个byte一个byte的写,快多了,因此,outputstream,给出了2个增强型的write: public void write(byte[] data) t ...

  7. Groupon面经:Find paths in a binary tree summing to a target value

    You are given a binary tree (not necessarily BST) in which each node contains a value. Design an alg ...

  8. JSP页面元素

    jsp-->Java Server Page jsp 页面元素: 静态内容 2.  指令 <%@ page contentType=”text/html” %>  设置指定页面内容类 ...

  9. 夺命雷公狗---DEDECMS----1dedecms的安装过程

    我们这次要玩的dedecms(cms也就是内容管理系统),电商网.或者政府网..小说网.新闻网之类的都是基于可以用cms来实现的. 现在在市场上主流的cms系统有dedecms(织梦),帝国cms,p ...

  10. zw版【转发·台湾nvp系列Delphi例程】HALCON EdgesImage

    zw版[转发·台湾nvp系列Delphi例程]HALCON EdgesImage procedure TForm1.Button1Click(Sender: TObject);var img0, im ...