Menu
CoddyTech

Move Zeroes

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

פונקציה

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

אילוצים

  • 1 ≤ nums.length ≤ 5000
  • -105 ≤ nums[i] ≤ 105

דוגמאות

קלט
nums = [0, 4, 0, 7, 2]
פלט
[4, 7, 2, 0, 0]
הסבר
הערכים שאינם 0 הם 4, 7 ו-2, והם נשארים בסדר הזה בתחילת הרשימה. שני ערכי ה-0 ממלאים את שני המקומות האחרונים.

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

challenge icon

שאלת המשך

האם תוכל להעביר כל 0 להתחלה במקום זאת, תוך שמירה על סדר הערכים האחרים, במעבר אחד ועם זיכרון נוסף של O(1)?

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

מקרה 1

מקרה 2

מקרה 3

קלט

nums = [0, 4, 0, 7, 2]

צפוי

[4, 7, 2, 0, 0]