如何用Ruby在超长列表中迅速定位重复数字?
- 内容介绍
- 文章标签
- 相关推荐
本文共计294个文字,预计阅读时间需要2分钟。
我正在处理一个大型列表(10^+5的顺序)的ID(大数据类型)。我需要在ID的列表中找到重复项。但在这里,我找到了一种方法来实现这一点。我将遍历列表并将ID放入哈希值中,但问题在于:
在处理过程中,我遇到了一个难题。虽然我能够成功地将ID放入哈希值中,但在输出结果时,我发现哈希值没有正确反映重复项。
我正在处理一个大型列表(10 ^ 5的顺序)的ID(长数据类型).我必须在Id的列表中找到重复项.但我被限制使用ruby.在这里,我找到了一种方法来做到这一点.
我将遍历列表并将Id放入哈希值,但在放入哈希值之前,我将检查它是否已经处于哈希状态.
我不确定RUBY中哈希的复杂性.
请建议我一个更好的主意.
require 'set' set = Set.new numbers.each do |number| puts "Number #{number} is already in the set" unless set.add?(number) end
或者只是找到重复项:
require 'set' set = Set.new duplicates = numbers.reject { |number| set.add?(number) }
本文共计294个文字,预计阅读时间需要2分钟。
我正在处理一个大型列表(10^+5的顺序)的ID(大数据类型)。我需要在ID的列表中找到重复项。但在这里,我找到了一种方法来实现这一点。我将遍历列表并将ID放入哈希值中,但问题在于:
在处理过程中,我遇到了一个难题。虽然我能够成功地将ID放入哈希值中,但在输出结果时,我发现哈希值没有正确反映重复项。
我正在处理一个大型列表(10 ^ 5的顺序)的ID(长数据类型).我必须在Id的列表中找到重复项.但我被限制使用ruby.在这里,我找到了一种方法来做到这一点.
我将遍历列表并将Id放入哈希值,但在放入哈希值之前,我将检查它是否已经处于哈希状态.
我不确定RUBY中哈希的复杂性.
请建议我一个更好的主意.
require 'set' set = Set.new numbers.each do |number| puts "Number #{number} is already in the set" unless set.add?(number) end
或者只是找到重复项:
require 'set' set = Set.new duplicates = numbers.reject { |number| set.add?(number) }

