Vergleich zweier Arrays in Javascript - Unterschiede werden zurückgegeben

8

Vorausgesetzt, wir haben:

%Vor%

Gibt es eine bewährte und schnelle Lösung, um zwei Arrays miteinander zu vergleichen und ein Array ohne die Werte in beiden Arrays (C und E hier) zurückzugeben. Also:

%Vor%

sollte die Ausgabe der Lösung sein. (Jquery kann beteiligt sein)

thx.

    
Hans 08.08.2010, 03:13
quelle

3 Antworten

11

Dies ist ein festgelegter Unterschied. Eine einfache Implementierung ist:

%Vor%

Dies ist O (m * n), wobei dies die Größen der Arrays sind. Sie können dies in O (m + n) tun, aber Sie müssen eine Art Hash-Satz verwenden. Sie können ein JavaScript-Objekt als einfachen Hash-Satz für Strings verwenden. Für relativ kleine Arrays sollte das obige gut sein.

    
Matthew Flaschen 08.08.2010, 03:18
quelle
13

Ich habe Matthews Lösung akzeptiert, möchte aber eine andere schnellere Lösung, die ich gerade gefunden habe, nicht ignorieren.

%Vor%

Quelle: Schleifen optimieren, um zwei Arrays zu vergleichen

>     
Hans 08.08.2010 03:45
quelle
0

Eine bewährte schnelle Lösung, die ich kenne, ist eine binäre Suche, die Sie verwenden können, nachdem Sie eines der Arrays sortiert haben. Die Lösung benötigt also Zeit, die vom Sortieralgorithmus abhängt. aber ist mindestens log (N).

    
akonsu 08.08.2010 03:20
quelle

Tags und Links