Menu
CoddyTech

Sort Colors

Vous recevez un tableau nums dans lequel chaque valeur est 0, 1 ou 2 : trois couleurs, comme le rouge, le blanc et le bleu. Réorganisez le tableau pour que tous les 0 viennent d’abord, puis tous les 1, puis tous les 2, et retournez-le. Résolvez le problème sans utiliser de fonction de tri de bibliothèque.

Fonction

sortColors(nums: integer-array) → integer-array
numsinteger-array
les couleurs, chacune valant 0, 1 ou 2
Renvoieinteger-array
les mêmes valeurs avec d’abord tous les 0, puis tous les 1, puis tous les 2

Contraintes

  • 1 ≤ nums.length ≤ 1.5 × 104
  • Chaque nums[i] vaut 0, 1 ou 2.
  • Une couleur peut être manquante, et le tableau peut contenir une seule couleur.

Exemples

Entrée
nums = [2, 1, 0, 2, 0, 1, 1]
Sortie
[0, 0, 1, 1, 1, 2, 2]
Explication
Le tableau contient deux 0, trois 1 et deux 2, le résultat est donc exactement cela : deux 0, puis trois 1, puis deux 2.
challenge icon

Pour aller plus loin

Que changerais-tu s’il y avait k couleurs au lieu de trois, avec k beaucoup plus petit que la longueur du tableau ?

Réinitialiser le code
def sortColors(nums):
    # Écrivez le code ici

Test #1

Test #2

Test #3

Argument

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

Résultat attendu

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