取两个已排序数组的交集

原创 2007年09月22日 12:07:00

public class t{
 private int[] a={0,1,3,3,5,7,9};//去比较
 private int[] b={-1,0,2,3,4,5,9,9,10};//被比较
 private int[] c=null;
 public t(){
  c=jiaoJi(a,b);
  print(); //打印
 }
 
 public int[] jiaoJi(int[] a,int[] b){ //处理交集函数
  //确定 中间变量数组 jj 的数组大小,其大小为,a,b两数组较小的数组大小
  int size;
  if (a.length>b.length){
   size=b.length;
  }else{
   size=a.length;
  }
                //建立中间变量数组 jj
  int [] jj=new int [size];
  for (int i=0;i<size;i++){ //赋值
   jj[i]=0;
  }
  int k=0;//记录交集元素插入到jj数组的位置
  int e=0;//记录 下一次比较的开始位置
  for (int i=0;i<a.length;i++){
   for (int j=e;j<b.length;j++){
    if (a[i]==b[j]){
     jj[k++]=a[i]; //存储交集元素,数组jj 下标 k 加一
     e=j+1; //记录 下一次比较的开始位置,既从j后面的元素开始
     break;//跳出for循环
    }
   } 
  }
  
  int [] zzjj=new int[k]; //根据K建立交集的是数组zzjj
  for (int i=0;i<k;i++){
   zzjj[i]=jj[i];
  }
  return zzjj;
 }

 public void print(){//打印
  for(int i=0;i<c.length;i++){
   System.out.print(c[i]+", ");
  }
  System.out.println();
 }

 public static void main(String args[]){
  new t(); 
 }
 

求两个有序整型数组的交集

1. 问题描述  有两个有序的整型数组a和b(没有重复元素),他们的长度分别为lenA和lenB,求出他们的共同元素。   例如:a = 0,1,3,5,7,9,11;b = 2,3,4,7,11;...
  • Jeanphorn
  • Jeanphorn
  • 2015年06月06日 22:55
  • 11997

算法5:求两个已排序数组的交集和并集

问题描述求两个已排序数据的交集和并集,要求时间复杂度为O(m+n).解题思路A数组和B数组,A数组大小为m,B数组大小为n。 1、查找B数组的每个成员是否在A数组中,时间复杂度为O(mn) 2、由...
  • pplin
  • pplin
  • 2017年03月06日 14:47
  • 514

求数组交集

注意:要求提供完整代码,如果可以编译运行酌情加分。 两个已排序的整型数组,求交集,最快算法 输入:两个已排序的整型数组(int a[m], b[n]) 输出:两个数组的交集 #include ...
  • H_armony
  • H_armony
  • 2015年07月03日 17:35
  • 841

js取两个数组的交集

function arrayIntersection ( a, b ) {     var ai=0, bi=0; ...
  • mengke1124
  • mengke1124
  • 2015年04月17日 13:22
  • 2046

最快速度求两个数组之交集算法

该题目来自58同城的二面,用最快速度求两个数组之交集算法。 比如A={6,2,4,1},B={2,9,4,3},那么A&B={2,4}。 文中总结出了四种解法,供大家分享探讨...
  • jianghuihong2012
  • jianghuihong2012
  • 2014年03月05日 20:09
  • 7375

最快速度求两个数组之交集算法与hash

该题目来自58同城的二面,用最快速度求两个数组之交集算法。 比如A={6,2,4,1},B={2,9,4,3},那么A&B={2,4}。 算法一:在大多数情况,也就是一般的情况下,大家都能想...
  • Richard_More
  • Richard_More
  • 2016年04月04日 21:22
  • 7469

算法兴趣-----求两个已排序数组的交集和并集(算法复杂度O(N+M))

算法博客:http://blog.csdn.net/beiyeqingteng/article/category/710777 问题: 给你两个排序的数组,求两个数组的交集。 ...
  • buster2014
  • buster2014
  • 2015年11月28日 16:55
  • 2282

js取数组两个数组的交集|差集|并集|补集|去重

/**   * each是一个集合迭代函数,它接受一个函数作为参数和一组可选的参数   * 这个迭代函数依次将集合的每一个元素和可选参数用函数进行计算,并将计算得的结果集返回   {%examp...
  • sinat_39430615
  • sinat_39430615
  • 2017年08月05日 16:15
  • 3505

c++之数组篇2:计算两个有序数组的交集

#include //using namespace std; int mixed(int arr1[],int n1,int arr2[],int n2,int* mix ) { int i ...
  • ding977921830
  • ding977921830
  • 2016年08月31日 15:49
  • 1019

JavaScript 中求出两个数组的交集和差集

es6 let intersection = a.filter(v => b.includes(v)) let difference = a.concat(b).filter(v => !a.incl...
  • a1104258464
  • a1104258464
  • 2016年10月11日 10:21
  • 3146
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:取两个已排序数组的交集
举报原因:
原因补充:

(最多只允许输入30个字)