Difference between the arrays

1 Ansicht (letzte 30 Tage)
Ananya Malik
Ananya Malik am 11 Aug. 2016
Kommentiert: Ananya Malik am 11 Aug. 2016
I have 2 arrays A= [1 2 3 4] and B = [2 3 4 5] representing paths in a graph. I want to find difference between the arrays. A-B =[1 2] and B-A = [4 5]. Can any one help. Thanks in advance.
  2 Kommentare
Cyrus
Cyrus am 11 Aug. 2016
Hi,
Shouldn't A-B = [1] and B-A = [5] ?
to my understanding you want to keep the numbers that are not repeated in the other array, is that right?
Ananya Malik
Ananya Malik am 11 Aug. 2016
actually A=[1 2 3 4] represents paths in a graph. 1-2, 2-3, 3-4. Similarly for B. By A-B, I want to print the edges in A but not in B.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

KSSV
KSSV am 11 Aug. 2016
Bearbeitet: KSSV am 11 Aug. 2016
clc ; clear all ;
A= [1 2 3 4];
B = [2 3 4 5] ;
A1 = [A(1:end-1) ; A(2:end)]' ;
B1 = [B(1:end-1) ; B(2:end)]' ;
AB = setdiff(A1,B1,'rows')
BA = setdiff(B1,A1,'rows')

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by