【发布时间】:2018-12-07 22:56:12
【问题描述】:
我的程序有问题。我会尽力解释,以便你能帮助我。
假设您想要拥有N 袋子,并且对于每个袋子,您想输入多个球(每个袋子的最大球数 = 10)。
我有一个函数,它首先引入袋子的数量N,然后它为每个袋子读取用户输入的一行,例如1 3 4 9,指示输入到该袋子中的元素,以及以此类推每个包,直到包N。
我的问题是,我如何才能“记住”所有球的输入顺序?在上面的示例行中,顺序是先 1,然后是 3,然后是 4,最后是 9。
在其他功能中,我需要为每个袋子i 提供它,按照输入的顺序获取它的元素,然后用它们做一些事情。
我的代码是这样的
for (int i = 0; i < N ; i ++){
//read all numbers
//and for each number "j"
G[i][j] = true;
}
其中G 是bool G[x][y],我用它来创建元素与它的包之间的关系,但这不起作用,因为它没有给我输入的顺序。
我想过创建一个链接列表,但我不知道如何使用从键盘给出的N 创建N 列表,然后访问每个列表。
我不知道是否清楚,但我不需要随机访问每个包的每个元素,我只需要一个包,按输入顺序迭代其元素。
【问题讨论】:
-
通常不使用
[]运算符访问链接列表。 -
我知道,但我不需要随机访问 bag 的每个元素,我只需要按照输入的顺序访问它的元素
-
这些值以您存储它们的任何顺序存储。读取一个数字,将其放入列表中。读取下一个数字,将其放入同一列表的下一个插槽中。然后继续。然后从第一个到最后一个迭代列表。这些值将与输入的顺序相同。你到底有什么问题?
-
@Uwunt 但我不知道如何创建 N 个列表 --
std::vector<MyLinkedListClass> Lists(N);
标签: c++ linked-list