How to move all zeroes to end of array in Ruby

1 Answer

0 votes
def display(arr)
    size = arr.length
	i = 0
	while (i < size) 
		print(arr[i].to_s, " ")
		i += 1
	end
end

def move_zeroes_to_end(arr) 
    size = arr.length
    j = 0
    i = 0
    while (i < size) 
        if (arr[i] > 0) 
            tmp = arr[i]
            arr[i] = arr[j]
            arr[j] = tmp
            j += 1
        end
        i += 1
    end
end



arr = [0, 8, 0, 0, 0, 7, 15, 0, 0, 4, 6, 9]
	
move_zeroes_to_end(arr)

display(arr)




# run:
#
# 8 7 15 4 6 9 0 0 0 0 0 0 
#

 



answered Nov 27, 2021 by avibootz

Related questions

1 answer 193 views
193 views asked Nov 28, 2021 by avibootz
1 answer 190 views
1 answer 191 views
1 answer 213 views
1 answer 161 views
161 views asked Nov 27, 2021 by avibootz
1 answer 138 views
...