代码改变世界

随笔档案-2011年10月17日

搜狗面试题:从N个正实数中选若干个数之和最接近M的递归实现

2011-10-17 10:06 by java线程例子, 504 阅读, 收藏,
摘要: //搜狗:有N个正实数(注意是实数,大小升序排列) x1 , x2 ... xN,另有一个实数M。 //需要选出若干个x,使这几个x的和与 M 最接近。 请描述实现算法,并指出算法复杂度。 public void FindDouble(double[] A,bool[] Exsits, int N,double M,int i,double PreCurrSum,bool Exists) { double theCurrSum = PreCurrSum + (Exists ? A[i - 1] : 0); Exsits[i - 1] = Exists; double theNewDelta.. 阅读全文