Angenommen, wir haben eine Liste:Sortieren ein Teil einer Liste anstelle
a = [4, 8, 1, 7, 3, 0, 5, 2, 6, 9]
Nun a.sort() die Liste an Ort und Stelle sortieren. Was, wenn wir nur einen Teil der Liste sortieren möchten, noch an Ort und Stelle? In C++ könnten wir schreiben:
int array = { 4, 8, 1, 7, 3, 0, 5, 2, 6, 9 };
int * ptr = array;
std::sort(ptr + 1, ptr + 4);
Gibt es einen ähnlichen Weg in Python?
Warum muss nur an Ort und Stelle sortiert werden? –
Ich denke, dass es eine gute Sache wäre, eine Anfrage an Python zu stellen. Es wären nur optionale Argumente für Anfang und Ende der Standardmethode sort(). –
Ein guter Grund für In-Place-Sortierung ist ein Fall, in dem Sie das Ende der Liste sortieren möchten (das ist meist schon sortiert, vielleicht durch eine weniger teure Schlüsselfunktion), und dann den letzten Wert ausgeben. Bei der Konstruktion einer meist gierigen TSP-Lösung kam es zu diesem Anwendungsfall. Wird wahrscheinlich mit der Lösung von @fviktor gehen. – Jostikas