【发布时间】:2013-03-02 10:31:12
【问题描述】:
我想生成一些介于 1 到 n 之间的数字的列表 假设最初的列表是:
L1: 1
L2: 2
L3: 3
L5: 4
.
.
Ln-1: n-1
Ln: n
总共有 n 个列表,最初包含 1 到 n 。 现在我想更新列表。
请告诉我如何在 C++ 中使用 STL 列表创建这样的列表。
我正在尝试这样。
list<int> first[n+1];
然后存储:
for(i=1;i<=n;i++)
first[i].push_back(i);
但我遇到运行时错误,
请告诉我如何解决这个问题。
list<int> a = {1,2,3};
list<int> b = {4,5};
list<int> c = {5,6};
我们能做吗:
list<int>a[3];
then
a[0].push_back(1);
a[0].push_back(2);
a[0].push_back(3);
a[1].push_back(4);
a[1].push_back(5);
a[2].push_back(5);
a[2].push_back(6);
【问题讨论】:
-
如果事先不知道
n,则另一种选择是使用std::vector<std::list<int>>。 -
@Grigoriy Chudnov 你能解释一下吗?
-
查看 billz 的答案。他创建了一个列表向量。其实我不确定是什么问题,我不知道推荐什么。
-
@UpendraJat 为什么不添加导致运行时问题的确切代码,以及您收到的运行时错误消息的副本,我们从那里获取?