查找arrayList的中间数字

时间:2012-11-18 09:48:50

标签: java median

鉴于Intgers:

  

1)ArrayList1:3456

     

2)ArrayList2:78910

如果将这些数字作为ArrayList的整数推算,找到中间数字的最佳方法是什么?

我在考虑a.size()/ 2(给定a是ArrayList的名称)

我想要返回第一个例子的整数集的中间数字,这将是45,而对于第二个例子,这将是891

如果ArrayList是偶数还是奇数,那么检查是什么? 我在想,如果Arraylist的大小是奇数,那么将下一个整数添加到整数列表中? 我试过这个但是我一直在圈子里。我也不想对我的名单进行排序。

任何线索?

3 个答案:

答案 0 :(得分:1)

如果我理解正确你只需要先切断和最后一次......

out.remove(0);
out.remove(out.size()-1);

但首先测试你的列表大小是否大于2。

答案 1 :(得分:1)

如果您想要删除ArrayList中的第一个和最后一个元素,您可以这样做。

ArrayList<Integer> list = new ArrayList<Integer>();
list.add(Arrays.asList(7,8,9,1,0));
list.remove(list.size()-1);
list.remove(0);

答案 2 :(得分:0)

不要考虑你所包含的内容,而要考虑你排除的内容:两个结束数字,可以在不知道长度是奇数还是偶数的情况下引用:

List<Integer> middle = list.subList(1, list.length() - 1);