首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 办公应用 > OFFICE教程 >

一个组合计算的算法

2012-01-12 
一个组合计算的算法求助给定一个数(姑且称之为参照数),在一系列数中,找出若干个(数量不定),以这若干个数的

一个组合计算的算法求助
给定一个数(姑且称之为参照数),在一系列数中,找出若干个(数量不定),以这若干个数的算术和与参照数差的绝对值最小为计算目标。
目前我使用的算法是对这若干个数进行全组合,计算出组合的和后,再同参照数逐一计算差的绝对值,可以算出来,但由于这种算法的时间复杂度是O(2^n),因此只要要查找的数列的个数大于24个后,计算时间需要很长,失去实际意义,请高手帮忙看看是否有更加好的算法。

先谢谢!



[解决办法]
楼主,这类问题建议到到数据结构与算法,或者C/C++、VC版本去问。

在Office版块您很难得到答案。

时间复杂度达到O(2^n)。不过单纯从你上面说的看,是必须组合的,那么时间复杂度很难降下来。而且你这里或许还需要考虑一下空间复杂度。

热点排行