Wie kann ich aufeinanderfolgende SubArrays zusammenführen, die dieselben Daten enthalten?

8

Ich habe dieses Array:

%Vor%

Ich muss diese Öffnungszeiten irgendwie mit dem Array verschmelzen, das so aussehen sollte:

%Vor%

Irgendwelche Ideen?

    
David 12.07.2015, 16:47
quelle

1 Antwort

7

Dies sollte für Sie funktionieren:

Im Grunde genommen durchlaufen Sie einfach Ihr gesamtes Array und prüfen, ob das nächste Element immer noch gesetzt ist UND das aktuelle Array das gleiche wie das nächste ist (was bedeutet, dass sie die gleichen Stunden haben). Wenn ja, tun Sie dies, bis die while-Schleife false zurückgibt. Welches ist dieser Code:

%Vor%

Wenn Sie mehr als einen Eintrag haben, erstellen Sie einen Bereich von einem Tag zum anderen. Welches ist dieser Code:

%Vor%

Wenn Sie nur einen Tag mit denselben Stunden haben, fügen Sie ihn einfach zum Ergebnis-Array hinzu. Welches ist dieser Code:

%Vor%

Und je nachdem wie viele Tage die gleichen Stunden vergangen sind, überspringen Sie die nächsten Array-Elemente. Welches ist dieser Code:

%Vor%

Vollständiger Code:

%Vor%

Ausgabe:

%Vor%

Demo

    
Rizier123 12.07.2015, 17:12
quelle