小编Wel*_*lez的帖子

比较unordered_map与unordered_set

首先,它们之间的主要区别是什么?

我发现的唯一一件事是unordered_set没有操作员[].我应该如何访问元素unordered_set,因为没有[]

哪个容器使用随机访问内存(或两者)?

哪一个在任何意义上更快或使用更少的内存?

c++ algorithm time-complexity data-structures c++11

11
推荐指数
1
解决办法
1万
查看次数

如何使用Java API Streams执行此类操作?

我想在流上连续执行以下操作.

1).我想从创建数字流2n.

我想这可以这样做:IntStream.range(2, n).

2).添加过滤器,只有当此数字不能被已通过此过滤器的任何其他数字整除时,才能使数字更进一步.

我无法实现这样的过滤器.我想我必须创建一个包含an的匿名类,ArrayList我将存储通过此过滤器的所有数字ArrayList.这一切应该看起来像:

IntStream.range(2, n).filter(new IntPredicate() {
        ArrayList<Integer> prev;

        @Override
        public boolean test(int value) {
            if (prev == null) {
                prev = new ArrayList();
                return true;
            }
            for (int i = 0; i < prev.size(); i++) {
                if (value % prev.get(i) == 0) {
                     return false;
                }
            }
            prev.add(value);
            return true;
        }
Run Code Online (Sandbox Code Playgroud)

3).获取Map<Integer, Integer>,其中密钥为数百(即100,200,300,400等),值为每百个中的素数数.所以对于百,100我必须找到[100,199]范围内的素数.

我想非常清楚,在第二步之后,流中只剩下素数.但是我不知道如何执行第三步并且不确定我的第二步的实现.

能帮我解决所有操作吗?

java java-8 java-stream

1
推荐指数
1
解决办法
101
查看次数