24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1279  |  回复: 5

lishalongfa

新虫 (初入文坛)

[交流] 【求助】请教:二维数组统计已有4人参与

要统计一个二维数组中数的出现次数(一行每个数只出现一次):
首先统计每一个数出现的次数,记录次数;
多于2次的进行两个两个组合,然后统计以上组合的数出现的次数;
组合出现多于2次的,再与出现多于2次的一个数任意组合,形成3个数的组合,统计各组合出现次数,(组合中的数不能有重复)………。
如:  
第一行:12  13  15 16
第二行:14  13  17  12
第三行: 11  13  15  17
统计结果:
12 : 2次
13: 3次
14: 1次
15:2次
16:1次
17: 2次
统计(12,13,15,17)中任意两数组合出现的次数:
(12,13): 2次
(12,15):1次
(12,17):1次
(13,15):2次
(13,17):2次
(15,17):1次
统计((12,13),(13,15),(13,17))与第一次形成的数组中的数组合出现的次数:
(12,13,15):1次
(12,13,17):1次
(13,15,17):1次
没有大于2次的组合,算法终止(否则继续)。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yujun2010

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+1):谢谢参与应助! 2010-05-18 14:01:19
生成一个100维的存储数组初始化为0,然后循环对比吧,对上哪个就加1呗,虽然方法比较笨,但是比较好用吧,尤其对没有实时性要求的
2楼2010-05-18 13:11:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

holmescn

金虫 (正式写手)

★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
wangen994(金币+2):辛苦了,呵呵 2010-05-18 19:35:18
我的想法是用集合的方法。生成对比集合,与原集合求交集,如果有交集,就记1次。
引用回帖:
如:  
第一行:12  13  15 16
第二行:14  13  17  12
第三行: 11  13  15  17
统计结果:
12 : 2次
13: 3次
14: 1次
15:2次
16:1次
17: 2次

每行看成一个集合,12组成一个新集合,与每一行相与,计算次数。然后是13。而这些新集合又组成几个集合,如果某一行的一个数不再这个大集合中,则新建一个集合。
或者第一次统计的时候就是单纯的计数,计算每一个数字的出现次数。这里可以吧数字看成是单词。用hash_map统计。
引用回帖:
统计(12,13,15,17)中任意两数组合出现的次数:
(12,13): 2次
(12,15):1次
(12,17):1次
(13,15):2次
(13,17):2次
(15,17):1次

这里就是把上一步的数组成2元集合与每行比较。
引用回帖:
统计((12,13),(13,15),(13,17))与第一次形成的数组中的数组合出现的次数:
(12,13,15):1次
(12,13,17):1次
(13,15,17):1次

重复上面的方法。

如果用C++,可以使用标准库里的set和map。用C的话,比较麻烦,你得自己搞一个map和set出来。或者用别的算法。如果会python的话,估计你已经能写出来了。
3楼2010-05-18 18:49:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lishalongfa

新虫 (初入文坛)

有c++的代码吗?完整的,能直接编译进行统计的源代码
4楼2010-05-24 11:35:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

163.com

金虫 (著名写手)

实习版主


小木虫(金币+0.5):给个红包,谢谢回帖交流
resonant:感谢提醒,一般新虫按照原来的版规是不可求助的,可是现在人气也不旺,我们也鼓励发帖,所以对于这类现象也并没有及时拨乱反正,望能理解。而且如果是不过分的问题,大家交流下或许也是有益处的:-) 2010-05-24 21:36:42
为什么求助没有金币
阿什顿联
5楼2010-05-24 21:11:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lishalongfa

新虫 (初入文坛)

-_-!!!.................
6楼2010-06-07 10:23:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lishalongfa 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见