Vergleiche zwei NSArrays und gebe die Anzahl der Unterschiede zurück

8

Wie kann ich zwei NSArrays nehmen, sie vergleichen und dann die Anzahl der Unterschiede, vorzugsweise die Anzahl der verschiedenen Objekte, zurückgeben, zum Beispiel:

Array 1:     ein     zwei     drei

Array 2:     zwei     vier     ein

Ich möchte, dass "1"

zurückgibt     
Matt S. 30.05.2010, 16:02
quelle

2 Antworten

23

Sie können dies tun, indem Sie ein intermediäres NSMutableArray verwenden :

%Vor%

Auf diese Weise werden nur gemeinsame Elemente entfernt.

    
Laurent Etiemble 30.05.2010, 16:30
quelle
2

Ich fand, dass die obige Antwort Arrays unterschiedlicher Größe nicht berücksichtigte. Wenn Sie wie oben beschrieben vorgehen, sollten Sie überprüfen, welches array.count kleiner ist und

%Vor%

ODER

Ich habe sie beide NSSets gemacht und dann verglichen.

%Vor%

Auf diese Weise werden Größe und Reihenfolge richtig behandelt! (Ich musste die Anzahl der Unterschiede nicht kennen)

    
Will Larche 16.08.2012 18:51
quelle

Tags und Links