加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 如果向量按顺序添加到向量中,是否需要对向量进行排序?

发布时间:2020-12-16 10:21:10 所属栏目:百科 来源:网络整理
导读:如果从已经排序的文件中读入项目,是否需要对矢量进行排序?如果不必要,我不想承担性能损失.作为参考,我正在使用它来构建它,并且每个项目在读入时都是有序的. Edited after @dribeas’ comment std::vectorint split(const std::string s,char delim) { std::
如果从已经排序的文件中读入项目,是否需要对矢量进行排序?如果不必要,我不想承担性能损失.作为参考,我正在使用它来构建它,并且每个项目在读入时都是有序的.

Edited after @dribeas’ comment

std::vector<int> split(const std::string &s,char delim) {
    std::vector<int> elems;
    std::stringstream ss(s);
    std::string item;
    while(std::getline(ss,item,delim)) {
        elems.push_back(static_cast<int>(atoi(item.c_str())));
    }
    return elems;
}

解决方法

不,您不需要对矢量进行排序. push_back明确地向末尾添加元素.

请注意,您的API正在接受elems并返回它(通过引用).矢量已包含的任何内容会发生什么?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读