Back to articles
Moving Zeroes to the End of an Array Using Two Pointer Technique in Python

Moving Zeroes to the End of an Array Using Two Pointer Technique in Python

via Dev.to PythonSri Mahalakshmi

Problem Explanation Given an integer array nums , your task is to move all 0s to the end of the array while maintaining the relative order of non-zero elements . Important: You must do this in-place Do not create a new array Example: Input: nums = [0, 1, 0, 3, 12] Output: [1, 3, 12, 0, 0] Input: nums = [0] Output: [0] Method Used: Two Pointer Technique We use: One pointer to track position for non-zero elements Another pointer to traverse the array Why This Method? Time complexity: O(n) Space complexity: O(1) Maintains order of non-zero elements Efficient and simple Python Code with Explanation class Solution : def moveZeroes ( self , nums ): Defines the function (in-place modification, no return needed). insert_pos = 0 insert_pos keeps track of where the next non-zero element should go. for i in range ( len ( nums )): Loop through each element using index i . if nums [ i ] != 0 : Check if the current element is non-zero. nums [ insert_pos ], nums [ i ] = nums [ i ], nums [ insert_pos

Continue reading on Dev.to Python

Opens in a new tab

Read Full Article
2 views

Related Articles