C++ 如何像向量一样在二维列表中插入元素?
所以,我这里有这个代码…我尝试了2D列表,搜索了如何在2D列表中插入,但没有找到任何结果C++ 如何像向量一样在二维列表中插入元素?,c++,list,vector,insert,type-2-dimension,C++,List,Vector,Insert,Type 2 Dimension,所以,我这里有这个代码…我尝试了2D列表,搜索了如何在2D列表中插入,但没有找到任何结果 vector<int> dynamicArray(int n, vector<vector<int>> queries) { vector<int>temp; list<list<int>>seqList(n); int lastans=0; for(int i=0;i<queries.size();i++){ int x
vector<int> dynamicArray(int n, vector<vector<int>> queries) {
vector<int>temp;
list<list<int>>seqList(n);
int lastans=0;
for(int i=0;i<queries.size();i++){
int x=queries[i][1],y=queries[i][2];
if(queries[i][0]==1){
int temp2=(x^lastans)%2;
seqList[temp2].push_back(y);
}
else{
lastans=seqList[(x^lastans)%2][y];
temp.push_back(lastans);
}
}
return temp;
}
如果我在这里犯了一个严重的错误,请原谅我,但是,…我在任何地方都找不到解决方案,而且它与vector配合得很好
编辑:-
我知道没有运算符…我想知道如何在这个2d列表中插入元素?或者是否有其他方法插入2d列表。A
std::list
不是一个std::vector
。这不应该是一个大惊喜
如果您阅读std::list
(例如)的文档,您会发现std::list
没有操作符[]
插入到您可以使用的列表中
请注意,如果seqList
是std::vector
,则运算符[]
不会插入元素。你有
std::vector<std::vector<int>> seqList(n); // outer vector has n element
seqList[temp2].push_back(y);
// access element at index temp2 in outer vector
// push an element to that element
std::vector seqList(n);//外向量有n个元素
seqList[temp2]。向后推_(y);
//外向量中索引temp2处的访问元素
//将一个元素推到该元素上
是的..我知道没有运算符,因为代码对其中任何一个都不起作用…但我想知道如何在2d列表中插入元素…不,对于列表来说,push_back应该也可以,但是insert也不起作用…它们几乎有相同的函数@Shadow抱歉,我没有真正理解这个问题。现在我认为您的困惑来自于listseqList(n)代码>。您不需要插入外部列表,因为您已经有n
条目。您无法通过操作员[]
访问它们,因为std::list
没有。是的..我想访问外部列表,因为我必须将acc插入外部列表的位置…这显然是不可能的..谢谢!
warning: statement has no effect [-Wunused-value]
seqList{temp2}.push_back(y);
std::vector<std::vector<int>> seqList(n); // outer vector has n element
seqList[temp2].push_back(y);
// access element at index temp2 in outer vector
// push an element to that element