Menu
CoddyTech

Sort Colors

Du erhältst ein Array nums, in dem jeder Wert 0, 1 oder 2 ist: drei Farben, zum Beispiel Rot, Weiß und Blau. Ordne das Array so um, dass zuerst alle 0en, dann alle 1en und schließlich alle 2en kommen, und gib es zurück. Löse die Aufgabe ohne eine Sortierfunktion aus einer Bibliothek.

Funktion

sortColors(nums: integer-array) → integer-array
numsinteger-array
die Farben, jeweils 0, 1 oder 2
Gibt zurückinteger-array
dieselben Werte, zuerst alle 0, dann alle 1 und anschließend alle 2

Einschränkungen

  • 1 ≤ nums.length ≤ 1.5 × 104
  • Jedes nums[i] ist 0, 1 oder 2.
  • Eine Farbe kann fehlen, und das Array kann eine einzelne Farbe enthalten.

Beispiele

Eingabe
nums = [2, 1, 0, 2, 0, 1, 1]
Ausgabe
[0, 0, 1, 1, 1, 2, 2]
Erklärung
Das Array enthält zwei 0en, drei 1en und zwei 2en, also ist das Ergebnis genau das: zwei 0en, dann drei 1en, dann zwei 2en.
challenge icon

Weiterführende Frage

Was würdest du ändern, wenn es statt drei k Farben gäbe und k viel kleiner als die Länge des Arrays wäre?

Code zurücksetzen
def sortColors(nums):
    # Schreibe hier den Code

Test #1

Test #2

Test #3

Argument

nums = [2, 1, 0, 2, 0, 1, 1]

Erwartete Ausgabe

[0, 0, 1, 1, 1, 2, 2]