Menu
CoddyTech

Squares of a Sorted Array

Du erhältst ein Array aus ganzen Zahlen nums, das in nicht absteigender Reihenfolge sortiert ist. Es kann negative Werte enthalten. Quadriere jeden Wert und gib die Quadrate als neues Array zurück, das ebenfalls in nicht absteigender Reihenfolge sortiert ist.

Funktion

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
das sortierte Array von Ganzzahlen, negative Werte sind erlaubt
Gibt zurückinteger-array
das Quadrat jedes Werts, in nicht absteigender Reihenfolge sortiert

Einschränkungen

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums ist nicht absteigend sortiert.

Beispiele

Eingabe
nums = [-6, -2, 1, 3, 7]
Ausgabe
[1, 4, 9, 36, 49]
Erklärung
Die Quadrate in der ursprünglichen Reihenfolge sind 36, 4, 1, 9 und 49. Die negativen Werte -6 und -2 ergeben große Quadrate, daher verschiebt das Sortieren 36 ans Ende: [1, 4, 9, 36, 49].

lock icon+14 versteckte Tests beim Einreichen

challenge icon

Weiterführende Frage

Quadrieren und Sortieren benötigt O(n log n). Kannst du das in O(n) schaffen?

Code zurücksetzen
def sortedSquares(nums):
    # Schreibe hier den Code
Testfälle

Fall 1

Fall 2

Eingabe

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

Erwartet

[1, 4, 9, 36, 49]