首页 新闻 会员 周边 捐助

arraylist 删除问题

0
[待解决问题]

一个数组,如{3,7,3,7,4,6,5,5,7},求两两相加等于10的组合,如3+7=10,组合后的数字要排除,不能再组合,如上例只有3+7,3+7 ,4+6,5+5 符合要求。求java算法?

f4487471314的主页 f4487471314 | 菜鸟二级 | 园豆:202
提问于:2016-06-30 16:17
< >
分享
所有回答(3)
0

这。。。。好难呀。

长蘑菇星人 | 园豆:1832 (小虾三级) | 2016-06-30 16:51
0

Firen | 园豆:5385 (大侠五级) | 2016-06-30 17:26

我c#写的,你改用java写就行了。

支持(0) 反对(0) Firen | 园豆:5385 (大侠五级) | 2016-06-30 17:26
0

简单成狗

foreach(int num in array_A)

{

  int next_Num = 10 - num;

  if(array_B.Contains(next_Num))

  {

    Consolo.Write(next_Num);//输出匹配项

    array_B.Remove(next_Num);//删除,然后继续循环下一个。

  }

}

 

这个意思你只要看懂,就很方便了。不用楼上这么麻烦

代码小兵的成长 | 园豆:303 (菜鸟二级) | 2016-07-01 10:05

支持(0) 反对(0) Firen | 园豆:5385 (大侠五级) | 2016-07-01 12:23

@Firen: 而且我不确定java的arrayList有Contains函数,所以用通用的操作索引的方式写了。

支持(0) 反对(0) Firen | 园豆:5385 (大侠五级) | 2016-07-01 12:26

@Firen: 大神你够猛,我只是写了一个假代码,你竟然写出来了,而且我写的方法竟然都是真的有,我都佩服自己了

支持(0) 反对(0) 代码小兵的成长 | 园豆:303 (菜鸟二级) | 2016-07-01 14:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册