首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

求解数据集合有关问题

2012-03-14 
求解数据集合问题数据库里有一个表data_table,字段如下:id name data1 A 50.22 B 1.53 C 5.64 D 6.25 E 6.

求解数据集合问题
数据库里有一个表data_table,字段如下:
id name data
1 A 50.2
2 B 1.5
3 C 5.6
4 D 6.2
5 E 6.3
...
...
...

数据上万条,现在想要找data的累积和的集合。比如14=6.2+6.3+1.5,那么累积和等于14的一个id集合是(2,4,5),但是当数量很大的时候人工求解的难度就很大了。求高手指点!谢谢!

如:累积和是1000的集合有哪些?

[解决办法]
我想到了一个低效的穷举算法:

1、初始化背包,用栈模型;
2、初始化物品列表,按重量升序排列;
3、是否能找到 指定位置以前的,且可放入背包的最重物品?
3a、能:放进去,转6;
3b、不:转4;
4、能否从包中将最后一个物品拿出来(注意是栈)
4a、能:转5;
4b、不:穷举接触,退出程序;
5、是否拿出来的这个物品已经是最小的了?
5a、是:回5;
5b、否:指定限制位置为最后拿出来的物品的原始位置,回3;
6、是否重量刚好?
6a、是:输出结果;回3;
6b、否:回3;

热点排行