陣列取並集、交集、差集
package xuxin; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.Iterator; import java.util.Set; /** * @Description * @author xu.xin * @date 2018年7月14日 上午10:54:20 */ public class sum { public static void main(String[] args) { // TODO Auto-generated method stub int[] a = { 12, 1, 2, 12, 1, 221432545, 6, 4, 6, 4, 56, 54654 }; int[] b={12,1,21,2,1,3213,4,4}; reverseArray(a);//陣列a反轉輸出(倒著排序輸出) joinArray(a,b);//陣列a,b合併輸出,合併陣列 diffSet(a,b);//陣列a,b差集(具有各不同的元素) intersectionArray(a,b);//陣列a,b交集 unionSet(a,b);//陣列a,b並集 } //陣列反轉順序輸出 static void reverseArray(int a[]) { ArrayList<Integer> arrayList = new ArrayList<>(); for (int i = 0; i < a.length; i++) { arrayList.add(a[i]); } System.out.println("反轉前:"); for (Integer integer : arrayList) { System.out.print(integer + " "); } System.out.println(); Collections.reverse(arrayList);// 反轉指定列表中的順序 System.out.println("反轉後:"); for (Iterator<Integer> iterator = arrayList.iterator(); iterator.hasNext(); System.out.print(iterator.next() + " ")); } //合併陣列 public static void joinArray(int[] a,int[] b){ ArrayList<Integer> list=new ArrayList<>(); for(Integer i:a){ list.add(i); } for(Integer j:b){ list.add(j); } System.out.println("合併陣列:"); for(Integer m:list){ System.out.print(m+" "); } } //陣列差集 private static void diffSet(int[] a,int[] b) { // TODO Auto-generated method stub ArrayList<Integer>array1=new ArrayList<>(); ArrayList<Integer>array2=new ArrayList<>(); for(int i:a){ array1.add(i); } for(int j:b){ array2.add(j); } array1.removeAll(array2);//兩個ArrayList取差集 for(Integer integer:array1){ System.out.print(integer+" ");//輸出陣列 } } //求兩個陣列的交集 private static void intersectionArray(int a[],int b[]){ ArrayList<Integer>array1=new ArrayList<>(); ArrayList<Integer>array2=new ArrayList<>(); for(int i:a){ array1.add(i); } for(int j:b){ array2.add(j); } array1.retainAll(array2);//兩個ArrayList取交集 for(Integer integer:array1){ System.out.print(integer+" "); } } //兩個陣列取並集 public static void unionSet(int[] a,int[] b){ Set<Integer> set=new HashSet<>();//HashSet集合的優勢就是不儲存相同元素 for(int i:a){ set.add(i); } for(int j:b){ set.add(j); } for(Iterator<Integer>iterator=set.iterator();iterator.hasNext();){ Integer integer=(Integer)iterator.next(); System.out.print(integer+" "); } System.out.println(); } }
相關推薦
php中陣列的並集、交集和差集函式
計算陣列的並集 array_merge ( array array1[,arrayarray1[,array… ] ) 將一個或多個數組的單元合併起來,一個數組中的值附加在前一個數組的後面。返回作為結果的陣列。 計算陣列的交集 array_intersect ( a
JS陣列求並集,交集和差集
es7: filter結合includes // 並集 let union = a.concat(b.filter(v => !a.includes(v))) // [1,2,3,4,5] // 交集 let intersectio
PHP陣列的幾個操作,求並集,交集,差集,陣列與字串的相互轉換及陣列去重
在php中如果我想要對兩個陣列進行如並集、交集和差集操作,我們可直接使用php自帶的函式來操作如array_merge(),array_intersect(),array_diff(). 計算陣列的合併 array_merge與“+”的區別 array_merge() 函式
JS實現並集,交集和差集
交集 clas 差集 log set nio bsp csdn 實現 var set1 = new Set([1,2,3]);var set2 = new Set([2,3,4]); 並集let union = new Set([...set1, ...set2]); 交集
利用sort和uniq求兩個文件的並集,交集和差集
sort uniq 利用sort和uniq求兩個文件的並集,交集和差集 並集:cat file1.txt file2.txt | sort | uniq > file.txt 交集:cat file1.txt file2.txt | sort | uniq -d >file.txt
shell中使用sort和uniq實現兩檔案的並集,交集和差集
網上轉的,不錯,比使用awk容易點 給定兩個檔案 a.txt 和 b.txt ,每行是一個記錄(假設沒有重複),要求輸出兩集合的交集、並集、差集,輸出的結果只包括唯一項。交集定義為同時出現在兩個檔案中的記錄項,並集定義為出現在任何一個檔案中的記錄項,差集(A-B)定義為出現在A中而且不出現在B中的記
Python list並集union, 交集intersection, 差集difference
轉載自翔雲並感謝Share python的集合set和其他語言類似,是一個無序不重複元素集, 可用於消除重複元素。 支援union(聯合), intersection(交), difference(差)和sysmmetric difference(對稱差集)等數學運算。 不支援 inde
ES6 運算元組的並集/交集/差集
使用ES6 運算元組 let a = new Set([1, 2, 3]); let b = new Set([3, 5, 2]); // 並集 let unionSet = new Set(
陣列取並集、交集、差集
package xuxin; import java.util.ArrayList; import java.util.Collections; import java.util.HashSet; import java.util.Iterator; import java
ES6陣列實現並集、交集、差集
let set1 = new Set(['a','b','c','d','e','f']); let set2 = new Set(['d','e','f','g','h','i']); //並集 let union = [...new Set([...set1,...set2])]; /
兩個陣列的並集、交集、差集
const arr1 = [1,2,3];const arr2 = [3,4,5];// 並集const union = Array.from(new Set([...arr1,...arr2]));
List的 並集、交集、差集操作
bject list imp st2 for add str class lis package com.zheting.collection.list; import java.util.ArrayList; import java.util.Arrays; impo
SQL 操作結果集 -並集、差集、交集、結果集排序
nbsp 分享 字段名 運算 語法 http 測試數據 結構 put 操作結果集 為了配合測試,特地建了兩個表,並且添加了一些測試數據,其中重復記錄為東吳的人物。 表:Person_1魏國人物 表:Person_2蜀國人物 A、Union形成並
集合類(並集、交集、差集操作)
昨日,朋友拿來一份有些問題的原始碼,是一個集合類和幾個集合操作函式(並集、交集、差集),幫忙改了一下,剛轉C++不到半個月,因為只是為了演算法競賽而學C++,所以只好好學了C++偏向演算法層的知識,類只是過了一遍,沒有自己嘗試寫過,剛好拿來練練手,於是大刀闊斧的
STL集合的並集、交集、差集、對稱差集
STL一共提供了四種set相關的演算法,分別是並集(union),交集(intersection),差集(difference),和對稱差集(symmetric difference)。 STL的這四個演算法所接受的set必須是有序區間,元素可以重複出現。即他們只能接受se
MySQL 並集、交集、差集
建立兩個表 CREATE TABLE `object_a` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `oname` varchar(50) DE
獲取兩個DataTable之間的差集、交集、並集集合(Except、Intersect、Union)
//獲取第一個資料來源DataTable DataTable dt1 = DBHelper.GetDataTable("select top 10 ksdid,user_id,user_pwd from ksd_user_info");
SQL中union(並集)、except(差集)、intersect(交集)用法,然而 mysql 不支援except 和 intersect
知識點: UNION返回兩個結果集的並集。還有一個union all的用法(union沒有包含重複列,union all 包含重複列) EXCEPT 返回兩個結果集的差(即從左查詢中返回右查詢沒有找到的所有非重複值(第一個表有,第二個表無))。 INTERS
兩個集合的相等判斷、交集、並集
#include<iostream> using namespace std; const int Size=10; void Get(int a[]); void Judge(int a[],int b[]);//判斷兩函式是否相等 void Intersaction(int a[],
Shell下做簡單的文字去重、交集、並集
工作中經常會碰到要拉取資料情況,有了資料之後做一個簡單的處理。 記錄一下最常用到的做去重的操作 假設有檔案list1 1 1 2 2 3 3 4 只用一條命令就能做去重的操作 cat list1 | uniq -u 結果會顯示一個 4 當然,如果要篩選出有過重複的數字,只