相关疑难解决方法(0)

从List <E>中取n个随机元素?

我如何从一个ArrayList<E>?理想情况下,我希望能够连续调用该take()方法来获取另一个x元素,而无需替换.

java random algorithm sampling

68
推荐指数
6
解决办法
4万
查看次数

删除Java ArrayList中的对象 - 时间消耗

我正在尝试从大小为7,140,​​000的ArrayList中删除140,000个对象.我预计这将需要几秒钟(如果那样),而是Java每千个对象需要几秒钟.这是我的代码:

     for (int i = list.size(); i > P; i--)
     {
         int size = list.size();

         int index = (int) (Math.random() * size);

         list.remove(index);
     }
Run Code Online (Sandbox Code Playgroud)

注意:P是我之前设置为7,000,000的常量.

循环的目标是从列表中随机删除对象,直到其大小为7,000,000.

Java花了这么长时间,因为我开始使用超过700万个对象?我从未注意到过去从ArrayLists中删除这个效率问题.如果有帮助,我使用DrJava Beta IDE.

java performance arraylist

11
推荐指数
2
解决办法
1686
查看次数

标签 统计

java ×2

algorithm ×1

arraylist ×1

performance ×1

random ×1

sampling ×1