Menu
CoddyTech

Squares of a Sorted Array

Ricevi un array di numeri interi nums ordinato in ordine non decrescente. Può contenere valori negativi. Eleva al quadrato ogni valore e restituisci i quadrati in un nuovo array, anch’esso ordinato in ordine non decrescente.

Funzione

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
l'array ordinato di numeri interi, sono ammessi i numeri negativi
Restituisceinteger-array
il quadrato di ogni valore, ordinato in ordine non decrescente

Vincoli

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums è ordinato in ordine non decrescente.

Esempi

Input
nums = [-6, -2, 1, 3, 7]
Output
[1, 4, 9, 36, 49]
Spiegazione
I quadrati nell'ordine originale sono 36, 4, 1, 9 e 49. I valori negativi -6 e -2 danno quadrati grandi, quindi l'ordinamento sposta 36 verso la fine: [1, 4, 9, 36, 49].

lock icon+14 test nascosti all’invio

challenge icon

Per approfondire

Elevare al quadrato e ordinare richiede O(n log n). Riesci a farlo in O(n)?

Ripristina il codice
def sortedSquares(nums):
    # Scrivi il codice qui
Casi di test

Caso 1

Caso 2

Input

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

Atteso

[1, 4, 9, 36, 49]