利用linux命令sort和uniq求兩個檔案的交集並集和補集
給定兩個檔案 a.txt 和 b.txt ,每行是一個記錄(假設沒有重複),要求輸出兩集合的交集、並集、差集,輸出的結果只包括唯一項。交集定義為同時出現在兩個檔案中的記錄項,並集定義為出現在任何一個檔案中的記錄項,差集(A-B)定義為出現在A中而且不出現在B中的記錄,對稱差集定義為只出現在一個檔案中的記錄。
假設 a.txt 包括 a, c, b 三行。假設 b.txt 包括 d, e, c, b 四行。
交集,把兩個檔案放到一起排序,只輸出次數多於一次的項:
$ sort a.txt b.txt | uniq -d
b
c
並集,把兩個檔案放到一起排序,重複的項只算一次:
$ sort a.txt b.txt | uniq
a
b
c
d
e
差集(A-B),把B的元素重複2份和A的元素放到一起排序,只輸出出現一次的項:
$ sort a.txt b.txt b.txt | uniq -u
a
對稱差,把兩個檔案放到一起排序,只輸出出現一次的項:
$ sort a.txt b.txt | uniq -u
a
d
e
相關推薦
利用linux命令sort和uniq求兩個檔案的交集並集和補集
給定兩個檔案 a.txt 和 b.txt ,每行是一個記錄(假設沒有重複),要求輸出兩集合的交集、並集、差集,輸出的結果只包括唯一項。交集定義為同時出現在兩個檔案中的記錄項,並集定義為出現在任何一個檔案中的記錄項,差集(A-B)定義為出現在A中而且不出現在B中的記錄,對稱
利用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
LINUX Shell 下求兩個檔案交集和差集的辦法
轉載自https://blog.csdn.net/autofei/article/details/6579320 假設兩個檔案FILE1和FILE2用集合A和B表示,FILE1內容如下: a b c e d a FILE2內容如下: c d
java 兩個list 交集 並集 差集 去重複並集
List<String> list1 =new ArrayList<String>();list1.add("A");list1.add("B);List<String&
JAVA工具類學習-java 兩個list 交集 並集 差集 去重複並集
List<String> list1 =new ArrayList<String>();list1.add("A");list1.add("B);List<String> list2 =new ArrayList<String>
Linux shell計算兩個檔案的交集 並集和差集
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
C語言利用順序表求兩個集合的差集
Description A和B分別表示兩個集合,集合中的元素為整數,C=A和B的差集,計算並依次輸出C中的元素。 要求:用順序表儲存,另闢空間儲存C中元素 。 Input 輸入集合A的元素個數n(n>=0) 依次輸入A中的元素,以空格分隔。 輸入集合B的元素個數m(m>
C 求兩個整數之間所有整數和問題
問題: Write a program that (1) inputs two integers (integer1 and integer 2) (2) prints sum of all integers between integer1 and integer2 (3) U
資料結構面試題總結6——陣列:求兩個陣列中滿足給定和的兩個元素
問題描述:在兩個有序陣列中,分別找出a,b兩個元素滿足a+b = c,c已知。 分析:我們要用有序這個有利條件,避免迴圈中套迴圈。我們用兩個索引i,j分別指向陣列A,B的首尾,根據比較的結果來移動索引的位置。 如果 A[i] + B[j] < c , i+
Linux中/dev/null和/dev/zero兩個檔案的作用和區別
開發十年,就只剩下這套架構體系了! >>>
vsftpd中關於ftpusers和user list兩個檔案的說明以及vsftpd conf中的userlist en
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
119-案例練習:接受使用者從控制檯輸入的兩個數字,並計算和,輸出到控制檯
Console.WriteLine("請輸入第一個數字"); string str1 = Console.ReadLine(); int num1 = Convert.ToInt32(str1); Conso
arcgis如何求兩個柵格數據集的差集
clas ont 圖層 idt isn script 語句 scrip enter 柵格數據集沒有擦除功能,現在有柵格A和柵格B,怎麽求兩個柵格的差集C 具體步驟如下: 1、首先利用柵格計算器,把柵格B中的value全部賦值為0 輸入語句:"柵格B" * 0
單鏈表——求兩個集合的差集 A,B集合求差集放到C連結串列中
#include <stdio.h> #include <malloc.h> typedef struct Node { int data; struct Node *next; }LNode,*LinkList; void list
單鏈表求兩個集合交集
#include using namespace std; template struct node { t data; node*next; }; template class linklist { public: linklist();
Android下的兩個檔案系統:proc和sys(一)
Linux層有公共目錄。例如ps命令可以看到所有執行的程序資訊(程序的UID,PID,記憶體,CPU等資訊)。大多數資源由兩個虛擬的檔案系統提供: proc filesystem(procfs) :包括記憶體,CPU,網路等 sys filesystem(sysfs):裝置驅動,網路環境(/sys/class
perl指令碼比較兩個檔案的相同行和不同行
這個指令碼diff.pl用於求兩個檔案相同的行和不同的行所構成的差集(即A中存在而B中不存在的行,及B中存在而A中不存在的行)。 #!/usr/bin/perl use 5.010; use strict; use warnings; use diagnostics;#w
如何用vlookup求兩個表交集
在表格或數值陣列的首列查詢指定的數值,並由此返回表格或陣列當前行中指定列處的數值。 當比較值位於資料表首列時,可以使用函式 VLOOKUP 代替函式 HLOOKUP。 在 VLOOKUP 中的 V 代表
js求物件陣列的交集/並集/差集/去重
1.求交集 var arr1 = [{name:'name1',id:1},{name:'name2',id:2},{name:'name3',id:3}]; var arr1Id = [1,2,3] var arr2 = [{name:'name1',id
兩個陣列的並集、交集、差集
const arr1 = [1,2,3];const arr2 = [3,4,5];// 並集const union = Array.from(new Set([...arr1,...arr2]));