我有一项任务,我需要找到一些积分的最小集合。我希望能够将每行数字存储在一组中,但我不知道最好的数据结构或方法。我有行数。例如,.txt文件将如下所示:
1 2 3 4 5 6
5 6 8 9
1 4 7 10
2 5 7 8 11
3 6 9 12
10 11
有没有办法动态创建多个数据结构来存储每一行数字?如果存在的话,我正在考虑这样的事情:
list<int> myList[6]; // create 6 lists
myList[0].insert(num); // insert numbers into this list
myList[1].insert(num); //insert numbers into the second list
我不想单独创建列表,因为在.txt文件中,最多可以有300组数字。
编辑:我的主要问题是弄清楚如何动态创建一些数据结构,最好是如果它与std :: set_union一起工作,因为它看起来对我的作业很有用
答案 0 :(得分:1)
如果要以编程方式控制列表数,可以使用std::vector
个数据集。因此,在您的情况下,声明将是
std::vector<std::list<int>> lists(6);
将新的空列表添加到列表集由
完成lists.push_back({}).