tcl中数组中元素的最大出现次数

时间:2015-10-01 14:13:12

标签: arrays tcl proc

我有一个数组如下

array = {a a a b b b c c c c c}

在上面的数组" a"是4次,b是3次,c是6次

如果我的输入高于数组

,你可以帮助我将proc输出为6吗?

由于

1 个答案:

答案 0 :(得分:6)

使用dict ionary来保存每个元素的计数,然后使用max函数来获取最大值。

auto

“splat”({*})会将值列表展开到其各个元素中,以便输入set array { a a a a b b b c c c c c c} foreach elem $array {dict incr count $elem} set max [tcl::mathfunc::max {*}[dict values $count]] puts $max ; # => 6 函数。