Project1
标题:
筛选数学
[打印本页]
作者:
sblkhgm
时间:
2016-8-3 08:24
标题:
筛选数学
怎么在这里选出有两个以上的数学 [ 8,8,6,5,8,2,5],这里的是8,5然后存起来,再把剩下的另外存起来
@a=[8,5] @b=[6,2]
作者:
夜狠简单
时间:
2016-8-3 11:13
本帖最后由 夜狠简单 于 2016-8-3 11:17 编辑
n= [ 8,8,6,5,8,2,5]
#取重复的元素,#取单独的元素
x=[];y=[]
n.each do |i|
a=n.size;n1=n.dup
n1.delete(i);b=n1.size
if a-b>1
x.push i;x=x&n
else
y.push i
end
end
p x,y
复制代码
可以用,就是有点绕了。对数组功能不怎么熟悉。
作者:
亿万星辰
时间:
2016-8-5 07:12
a = [8,8,6,5,8,2,5]
b = a.uniq
c = [] #重复元素
d = [] #不重复元素
for x in b
a.rindex(x) != a.index(x) ? c.push(x) : d.push(x)
end
复制代码
作者:
kuerlulu
时间:
2016-8-5 10:56
num_counter = Hash.new { |h, k| h[k] = 0 }
[8,8,6,5,8,2,5].each { |e| num_counter[e] += 1}
p num_counter.select { |h, k| k >= 2 }.keys
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1