Menu
CoddyTech

Squares of a Sorted Array

Vous disposez d’un tableau d’entiers nums trié par ordre non décroissant. Il peut contenir des valeurs négatives. Élevez chaque valeur au carré et renvoyez les carrés dans un nouveau tableau, lui aussi trié par ordre non décroissant.

Fonction

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
le tableau trié d’entiers, les nombres négatifs sont autorisés
Renvoieinteger-array
le carré de chaque valeur, trié par ordre non décroissant

Contraintes

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums est trié par ordre non décroissant.

Exemples

Entrée
nums = [-6, -2, 1, 3, 7]
Sortie
[1, 4, 9, 36, 49]
Explication
Les carrés dans l’ordre d’origine sont 36, 4, 1, 9 et 49. Les valeurs négatives -6 et -2 donnent de grands carrés, donc le tri déplace 36 près de la fin : [1, 4, 9, 36, 49].

lock icon+14 tests cachés à la soumission

challenge icon

Pour aller plus loin

Mettre au carré et trier prend O(n log n). Peux-tu le faire en O(n) ?

Réinitialiser le code
def sortedSquares(nums):
    # Écrivez le code ici
Cas de test

Cas 1

Cas 2

Entrée

nums = [-6, -2, 1, 3, 7]

Attendu

[1, 4, 9, 36, 49]