Difference between the arrays

4 vues (au cours des 30 derniers jours)
Ananya Malik
Ananya Malik le 11 Août 2016
Commenté : Ananya Malik le 11 Août 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 commentaires
Cyrus
Cyrus le 11 Août 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 le 11 Août 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.

Connectez-vous pour commenter.

Réponse acceptée

KSSV
KSSV le 11 Août 2016
Modifié(e) : KSSV le 11 Août 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')
  1 commentaire
Ananya Malik
Ananya Malik le 11 Août 2016
Thanks a lot. works perfectly.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by