首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在C++中复制变量的复杂性是多少?

在C++中复制变量的复杂性是多少?
EN

Stack Overflow用户
提问于 2017-01-07 10:26:59
回答 3查看 2.9K关注 0票数 1

我的一位朋友说,位掩码比位集更好,因为复制位集需要O(N)时间,而复制位掩码只需O(1)时间,这样对于动态编程之类的应用程序来说要快得多。所以我想知道所有其他数据类型都是一样的吗?

例如,这段代码的复杂性是什么?

代码语言:javascript
运行
复制
vector <int> vec1 = {1,2,3,4,5,6,7,8,9,10};
vector <int> vec2 = vec1;

如果是O(N),为甚麽呢?应该是O(1)就像做这样的事情

代码语言:javascript
运行
复制
int x = 530210;
int y = x;

会是吗?

EN

Stack Overflow用户

发布于 2017-01-07 12:41:55

复制长度为N的向量可以通过以下几种方法来测量:

  • O(1)向量复制操作
  • O(N)元素复制操作
  • O(NT)度量单位,如果元素复制操作为O(T)

顺便说一句,你的朋友对bitset的看法是错误的,或者你误解了。bitset的优点是对数据结构进行了优化,以利用可以由单个线程执行的低级别并行执行形式--即64位整数操作可以同时在64位上工作。

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41520379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档