Menu
CoddyTech

Squares of a Sorted Array

ניתן לך מערך של מספרים שלמים nums שממוינים בסדר לא יורד. הוא עשוי להכיל ערכים שליליים. העלה בריבוע כל ערך והחזר את הריבועים כמערך חדש, שגם הוא ממוין בסדר לא יורד.

פונקציה

sortedSquares(nums: integer-array) → integer-array
numsinteger-array
המערך הממויין של מספרים שלמים, כולל מספרים שליליים
מחזירהinteger-array
הריבוע של כל ערך, ממוינים בסדר לא יורד

אילוצים

  • 1 ≤ nums.length ≤ 4000
  • -104 ≤ nums[i] ≤ 104
  • nums ממוינת בסדר שאינו יורד.

דוגמאות

קלט
nums = [-6, -2, 1, 3, 7]
פלט
[1, 4, 9, 36, 49]
הסבר
הריבועים בסדר המקורי הם 36, 4, 1, 9 ו-49. הערכים השליליים -6 ו-2 נותנים ריבועים גדולים, ולכן המיון מעביר את 36 קרוב לסוף: [1, 4, 9, 36, 49].

lock icon+14 בדיקות נסתרות בשליחה

challenge icon

שאלת המשך

העלאה בריבוע ומיון אורכים O(n log n). האם תוכלו לעשות זאת ב־O(n)?

איפוס הקוד
def sortedSquares(nums):
    # כתבו כאן את הקוד
מקרי בדיקה

מקרה 1

מקרה 2

קלט

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

צפוי

[1, 4, 9, 36, 49]