这个用什么算法比较好啊? 集合A里有n个元素,从A中取出m(m<n)个元素形成集合B(A中至少存在一个这样的B),使得这m个元素之和为一给定数值。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TO:kingfish不是啊,才没有闲工夫研究那个呢,是毕业设计中的遇到的问题,我把它抽象出来了 TO bennyparlo:能不能简单的描述一下,我就是不知道怎么从n个元素中取出m个元素 简单说下我的思路。首先对A进行排序。然后查找定数值(sum)的位置。(用除二法)去掉大于sum的部分。为了操作方便可以把它转换成list进行操作。也可以添加几个方法实现int[]的remove的操作。从list取出前m-1个元素。和list最后一个元素求和(sumTemp)。如果sumTemp>sum,remove最后一位。如果相等纪录数据,如果小于。remove第m-2个元素。在从list取出前m-1个元素。和list最后一个元素求和(sumTemp)。循环进行操作。如果最后一位,和m-1相等时结束。 javaJDK配置问题 分页查询速度很慢,如何建立索引呢????望指教。。。谢谢 java接口传值问题 Java中可以通过编码进行视频压缩吗 ***急问,java制作窗口问题,初学者*** 请问Java Web Start有什么用处? 请问:我怎么用java程序如何取出.doc或.excel文件里的内容啊?急!!!(100分) 大家帮忙分析一下这语句的错误 用java怎样实现每隔一小时启动一个线程 我的控制台程序怎么老需要人工按一个按键才能触发。 求教:一个正则表达式的写法 请看看这个程序啊~~谢谢了~~~
不是啊,才没有闲工夫研究那个呢,是毕业设计中的遇到的问题,我把它抽象出来了
首先对A进行排序。然后查找定数值(sum)的位置。(用除二法)去掉大于sum的部分。
为了操作方便可以把它转换成list进行操作。也可以添加几个方法实现int[]的remove的操作。
从list取出前m-1个元素。和list最后一个元素求和(sumTemp)。如果sumTemp>sum,remove最后一位。如果相等纪录数据,如果小于。remove第m-2个元素。在从list取出前m-1个元素。和list最后一个元素求和(sumTemp)。循环进行操作。如果最后一位,和m-1相等时结束。