如何将 std::vector 索引交换到<int>数据,将数据交换到索引
How to swap std::vector<int> index to data and data to index
索引 : 0 1 2 3数据 : 3
0 1 2
这意味着vector[0]
是 3,vector[3]
是 2。
现在像这样交换元素。
输出向量:
索引 : 0 1 23 数据
: 1 2 3 0
这意味着
">- 0"存在于索引"1"处的输入向量中,因此
vector[0]
替换为"1">
"> - 3"存在于索引"0"处的输入向量中,因此
vector[3]
替换为"0">
我们可以在不使用临时变量的情况下做到这一点吗?
如果你想创建一个新的向量,那么,假设你的向量只包含一个排列(这样我们就可以避免检查我们的索引是否会超出范围,因为它不应该(,你可以构造一个函数
std::vector<int> exchange(const std::vector<int>& in) {
std::vector<int> out(in.size());
for (int i = 0; i < in.size(); i++) out[in[i]] = i;
return out;
}
相关文章:
- 修改链表主函数代码,用户将在其中输入节点的索引和数据以及正确的消息
- 保持排序的数据结构,允许log N插入时间,并且可以返回我在log N中查找的元素的索引
- 如何索引转换后的用户数据值?
- C++ STL 数据结构常时按索引推送/弹出/随机访问,并具有指向元素的可靠指针
- 如何将 std::vector 索引交换到<int>数据,将数据交换到索引
- 为什么我的代码没有对数组中第二个索引上的数据进行排序?
- 用于存储网格(将具有负索引)的数据结构
- 查找索引数据结构,例如`sTD :: vector`(非数组)
- 向量下标出的范围错误.即使向量的索引大于访问数据的索引,也会发生误差
- 多个快速读取器 单个慢速写入器:使用具有原子索引的阴影数据安全吗?
- 从右到左计算当前索引中的数据结构中的元素数,并打印每个元素的计数
- C++ LuaBridge 尝试索引用户数据值(本地"self")
- 如何创建辅助数据结构来跟踪 c++ 中 decrease_key 操作的堆索引
- 当结构数组在主线程中填充数据时,从结构数组的低索引元素读取是否线程安全
- 如何在cv :: cuda :: ptrstepszf数据上使用线性索引
- 在Boost多索引容器中搜索位字段数据
- 数据检索和索引
- 如何使用位表示访问可索引的数据结构
- 用于处理索引不断变化的数组的数据结构
- 如何从结构数组中删除一个数据行?(带索引)