2016-12-26 4 views
-1

Ich sah diese beiden JS Codeblöcke für Quick sort und Merge sort und ich möchte eine parallele Ausführung üben, um die Zeit zu messen, die jeder Code benötigt, um die Balken zu sortieren. Ich weiß, JS arbeitet in Single-Thread-und Single-Prozess, aber ich denke auch, es gibt einen guten Weg, um die Zeit zu messen.Quicksort und Mergesort parallel ausführen, um Zeit zu messen - JavaScript?

Wie kann ich das tun? Ist es mit einer speziellen Bibliothek oder einem Trick in JavaScript?

Antwort

1

Ich weiß, JS einzigen Thread und einzigen Prozess ...

Nope arbeitet. Nicht einmal in Browsern. Die Sprache hat nichts über Threading zu sagen. Es ist eine Frage der Umwelt. Zum Beispiel gibt es in Browsern einen Haupt-UI-Thread und so viele web worker Threads, wie Sie erstellen möchten.

Aber ich würde nicht Multithreading verwenden, um die Zeit zu vergleichen, die zwei verschiedene Sortieralgorithmen nehmen. Testen Sie sie stattdessen separat und stellen Sie sicher, dass im Hintergrund nichts anderes passiert. Tool-Empfehlungen sind für SO unpassend, aber Sie benötigen hier kein spezielles Tool. Führen Sie wiederholte Tests mit Aufwärmübungen durch und mitteln Sie die Ergebnisse. Versuchen Sie, Wege zu finden, wie Sie die Daten für die eine oder andere Art anpassen können, und testen Sie sowohl diese Daten als auch zufällige Daten. Stellen Sie sicher, dass das Messen der Zeiten die Sortierung nicht beeinträchtigt. Stellen Sie sicher, dass die sortierten Ergebnisse korrekt sind (anderenfalls spielt es keine Rolle, wie schnell sie ausgeführt werden). Usw.

Verwandte Themen