首页 > 解决方案 > 从Ruby中的数组中删除前导零元素

问题描述

我有一个这样的数组:

a = [0, 0, 1, 0, 1, 1, 0]

我想删除主要0元素来获得这个:

a = [1, 0, 1, 1, 0]

在 Ruby 中执行此操作的最佳方法是什么?我想出了一个解决方案,但感觉不像它应该的那么优雅:

count = 0
a.each do |element|
  break if element != 0
  count += 1
end
a = a[count..-1]

我觉得这可能有一个干净的单线。

标签: ruby

解决方案


我会使用:

 [0, 0, 1, 0, 1, 1, 0].drop_while(&:zero?)
 #=> [1, 0, 1, 1, 0]

推荐阅读