2012-03-31 13 views
1

Ich arbeite an einem Programm, das ein paar Zahlen in C# sortieren muss. Ich möchte diese Sortierung für eine Weile basierend auf Benutzereingaben anhalten und später von wo es gestoppt wurde fortsetzen.Willst du ein Sortierprogramm anhalten und dann später fortsetzen

Ich benutze Blasensortierung, um die Nummern zu sortieren. Was könnte der beste Weg sein, diese Sortierung zwischendurch anzuhalten? Kann es mit Threads oder einigen Ereignissen gemacht werden?

Antwort

0

Die meisten Sortieralgorithmen können als einzelne Schleife dargestellt werden und können daher problemlos bei jeder Iteration pausiert werden. Für die Bubble-Sortierung kann es ausreichen, wenn Sie bei der äußeren Schleife pausieren. Denken Sie nur daran, wo Sie angehalten haben, und starten Sie von diesem Index aus neu.

Schreiben Multithread-Sortierung macht Spaß, aber wenn Sie Original ist single-threaded ich sehe nicht, wie Multithreading kann helfen ... Sie müssten mehr Details zu dem, was Sie für bessere Antworten auf Multithreading tun möchten/Ereignisabschnitt.

0

können Sie einen neuen Stream erstellen. Sortieren Sie Ihre Informationen in diesem neuen Thread. Sie können es anhalten, wenn Sie es brauchen. Lesen Sie mehr über "Thread.Suspend"

0

Wenn Sie nur ein paar Zahlen sortieren, werden Sie nicht in der Lage sein, es für Benutzereingaben zu pausieren - es wird getan werden, bevor irgendwelche Benutzereingaben möglich sind es sei denn, Sie verwenden etwas wie Bogosort

Verwandte Themen