相关疑难解决方法(0)

如何检查数组是否有重复项?

我有一个数组A.我想检查它是否包含重复值.我该怎么办?

ruby arrays

68
推荐指数
4
解决办法
5万
查看次数

48
推荐指数
7
解决办法
4万
查看次数

如何选择独特的元素

我想Array用一个uniq_elements方法来扩展该类,该方法返回多个为1的元素.我也想在我的新方法中使用闭包uniq.例如:

t=[1,2,2,3,4,4,5,6,7,7,8,9,9,9]
t.uniq_elements # => [1,3,5,6,8]
Run Code Online (Sandbox Code Playgroud)

关闭示例:

t=[1.0, 1.1, 2.0, 3.0, 3.4, 4.0, 4.2, 5.1, 5.7, 6.1, 6.2]
t.uniq_elements{|z| z.round} # => [2.0, 5.1]
Run Code Online (Sandbox Code Playgroud)

既不工作t-t.uniq也不t.to_set-t.uniq.to_set工作.我不关心速度,我在程序中只调用一次,所以它可能很慢.

ruby arrays uniq

9
推荐指数
1
解决办法
1421
查看次数

如何有效地提取Ruby数组中的重复元素?

我有一个类似[1,1,1,2,4,6,3,3]的数组,我想得到重复元素的列表,在本例中为[1,3].我写了这个:

my_array.select{|obj|my_array.count(obj)>1}.uniq
Run Code Online (Sandbox Code Playgroud)

但它的效率很低(o(n²)).你有更好的主意吗?如果可能简洁.

谢谢

ruby arrays count elements

6
推荐指数
2
解决办法
4772
查看次数

快速查找大型数组中的重复项

我有一个35k元素的数组.我怎样才能有效地找到重复项并返回重复项?

all = [*1..35000, 1]
Run Code Online (Sandbox Code Playgroud)

此解决方案有效:

all.select { |v| all.count(v) > 1 }
Run Code Online (Sandbox Code Playgroud)

但这需要很长时间.

ruby

4
推荐指数
2
解决办法
145
查看次数

如何从ruby数组中获取重复元素?

假设我有一个数组[1,2,3,1,5,2].这里1和2是重复的元素.我想得到一个新的数组[1,2].

我如何在红宝石中做到这一点?

ruby ruby-on-rails

3
推荐指数
1
解决办法
5420
查看次数

Ruby数组减法?

要么我不明白从数组中减去一个数组会发生什么,或者这里有什么问题.

我所拥有的是数组中的用户名(字符串)列表:

users.count - users.uniq.count    # => 9
users - users.uniq                # => []
Run Code Online (Sandbox Code Playgroud)

我不确定这是怎么回事.

我基本上试图找到重复列表.我意识到还有其他方法可以解决这个问题,只是尝试更好地理解阵列操作.

这是我用来获得相同的变通方法代码:

users.inject(Hash.new(0)) {|h,i| h[i] += 1; h}.select{|k,v| v > 1}
Run Code Online (Sandbox Code Playgroud)

ruby arrays

3
推荐指数
1
解决办法
1620
查看次数

在 Ruby 数组中查找重复项

我试图在 1 到 1000000 之间的字符串数组中查找重复值。

但是,使用我拥有的代码,我得到的输出是所有条目都加倍了。

例如,如果我有[1,2,3,4,3,4],它会给我输出 3 4 3 4 而不是 3 4。

这是我的代码:

array = [gets]

if array.uniq.length == array.length
  puts "array does not contain duplicates"
else
  puts "array does contain duplicates"
  print array.select{ |x| array.count(x) > 1}
end
Run Code Online (Sandbox Code Playgroud)

另外,每次测试代码时,我都必须将数组定义为array = [1,2,3,4,5,3,5]. 可以puts工作,但当我使用数组 [gets] 时它不会打印。

有人可以帮助我如何解决这两个问题吗?

ruby arrays

3
推荐指数
1
解决办法
6028
查看次数

标签 统计

ruby ×8

arrays ×6

count ×1

elements ×1

ruby-on-rails ×1

uniq ×1