黑马程序员技术交流社区

标题: 如何实现两个数最接近的比较. [打印本页]

作者: 范明正    时间: 2011-8-21 23:30
标题: 如何实现两个数最接近的比较.
java如何实现两个数最接近的比较  例如
public int getAdjacent(List <Integer>list,int x);

用list集合里面的元素值跟x比较,首先取单个元素计较,再取两个元素相加比较,直到N个元素相加比较,最后返回最接近x

的数,这个最接近x的数必须比x小,也就是单个比较的话首先先去掉大于x的元素再比较 ,如此类推,直到N个相加输去掉大

于X的数再比较如:

List xlist = new ArrayList();
for(int i=0;i<list.size();i++)
{
if(list.get(i)<x)
{
xlist.add(list.get(i))
}
}

最后用xlist元素的值跟x比较,并把返回的最接近X的值放入最接近X的set中, 如此类推 直到第N个元素相加最接近X的值放

入set中,此时set中保存的是由单个元素到N个元素相加最接近X的值,再用set值去比较 最终返回 最最接近X的值
[ 本帖最后由 范明正 于 2011-08-22  07:45 编辑 ]
作者: 匿名    时间: 2011-8-21 23:44
自问自答吗,思路很清晰啊
作者: 匿名    时间: 2011-8-21 23:49
。。。夜了,晚安。
作者: 匿名    时间: 2011-8-21 23:52
[quote] 原帖由 [i]史卫平[/i] 于 2011-08-21 23:44 发表 [url=http://bbs.itheima.com/redirect.jsp?goto=findpost&pid=8016&ptid=1234][img]http://bbs.itheima.com/images/common/back.gif[/img][/url]自问自答吗,思路很清晰啊 [/quote]数据少点还行,一多就不行了,复杂度好像是n*n




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2