Nehmen Sie ein Array von ganzen Zahlen, die negative Zahlen, positive Zahlen und Nullen enthalten. Gruppieren Sie es mit einer Iteration und an Ort und Stelle , sodass alle negativen Zahlen an erster Stelle stehen, gefolgt von allen Nullen, gefolgt von allen positiven Zahlen.
Beispiel:
Input: 5, 3, 0, -6, 2, 0, 5
Output: -6, 0, 0, 3, 2, 5, 5
Beachten Sie, dass die Zahlen nicht vollständig sortiert werden müssen: nur nach Vorzeichen sortiert.
Das endgültige Array sieht also folgendermaßen aus: -, -, ..., -, -, 0, 0, ..., 0, 0, +, +, ..., +, +
Regeln
- Sie dürfen nur das Eingabearray und eine konstante Menge zusätzlichen Speichers verwenden (dh Sie dürfen keine weiteren Arrays erstellen).
- Sie dürfen nur eine Schleife verwenden, die möglicherweise nur so oft ausgeführt wird wie die Länge des Arrays. Sie dürfen keine integrierten Funktionen verwenden, die Schleifen jeglicher Art verbergen. Dies beinhaltet integrierte Sortierfunktionen.
- Das Ergebnis sollte das von mir beschriebene Format haben
Der Gewinner ist die Person, die den kürzesten Code (in Bytes gezählt) übermittelt, der das ursprüngliche Array in ein korrektes Format ändert (wie oben beschrieben).
sort(...)
ist nicht in Ordnung, da es wahrscheinlich mehr als eine Iteration ausführt .