大佬教程收集整理的这篇文章主要介绍了在Ruby中如何做出正确的“设定差别”?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
[1,2] - [1,2,3] => [] # Hmm [1,3] - [1,2] => [3] # I see a = [1,2].to_set => #<Set: {1,2}> b = [1,3].to_set => #<Set: {1,3}> a - b => #<Set: {}> WTF!
和:
[1,9] - [1,3] => [9] # Hmm. Would like [[9],[3]]
无论输入的顺序如何,一个执行真正的设置差异?
PS.除此之外,我需要为两个2000元素的数组执行此操作.通常,数组#1将比数组#2具有更少的元素,但不能保证.
-
operator应用于两个阵列a和b给出了a的a001(在b中不是b的项).
你正在寻找的是两套symmetric difference(两者之间的相对补充的联合).这将会诀窍:
a = [1,9] b = [1,3] a - b | b - a # => [3,9]
如果您使用Set
对象,则可以使用过载的^
operator:
c = Set[1,9] d = Set[1,3] c ^ d # => #<Set: {3,9}>
为了额外的乐趣,您还可以在union的两组中找到intersection的相对补码:
( a | b ) - ( a & b ) # => #<Set: {3,9}>
以上是大佬教程为你收集整理的在Ruby中如何做出正确的“设定差别”?全部内容,希望文章能够帮你解决在Ruby中如何做出正确的“设定差别”?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。