Menu
CoddyTech

Squares of a Sorted Array

Otrzymujesz tablicę liczb całkowitych nums posortowaną w kolejności niemalejącej. Może zawierać wartości ujemne. Podnieś każdą wartość do kwadratu i zwróć kwadraty jako nową tablicę, również posortowaną w kolejności niemalejącej.

Funkcja

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
posortowana tablica liczb całkowitych, dopuszczalne są liczby ujemne
Zwracainteger-array
kwadrat każdej wartości, posortowane w kolejności niemalejącej

Ograniczenia

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums jest posortowane w kolejności niemalejącej.

Przykłady

Wejście
nums = [-6, -2, 1, 3, 7]
Wyjście
[1, 4, 9, 36, 49]
Wyjaśnienie
Kwadraty w pierwotnej kolejności to 36, 4, 1, 9 i 49. Wartości ujemne -6 i -2 dają duże kwadraty, więc sortowanie przesuwa 36 blisko końca: [1, 4, 9, 36, 49].

lock icon+14 ukrytych testów przy wysłaniu

challenge icon

Pytanie dodatkowe

Podnoszenie do kwadratu i sortowanie zajmuje O(n log n). Czy potrafisz zrobić to w O(n)?

Zresetuj kod
def sortedSquares(nums):
    # Napisz kod tutaj
Przypadki testowe

Przypadek 1

Przypadek 2

Wejście

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

Oczekiwane

[1, 4, 9, 36, 49]