我使用list< vector <int> >
,我想将数组元素设置到其中,但我不知道如何。
int t[] = { 3 , 5 , 4 , 0 , 7 , 9 , 1 , 3 , 6 , 8 , 4 } ;
list< vector<int> >bar;
并使用迭代器显示数据
3
5 4
4 0 7
0 7 9 1
7 9 1 3 6
9 1 3 6 8 4
答案 0 :(得分:0)
这是一个代码段。
int t[] = { 3 , 5 , 4 , 0 , 7 , 9 , 1 , 3 , 6 , 8 , 4 };
int arr_size = sizeof(t) / sizeof(int);
list< vector<int> >bar;
int i, j = 0;
cout << " ";
while (j < arr_size)
{
int s = bar.size() + 1;
vector<int> vec;
for (i = 0; i < s && (j + i) < arr_size; i++)
{
vec.push_back(t[j + i]); cout << t[j + i] << " ";
}
if ((j + i) >= arr_size) break;
j++;
cout << "\n ";
if (!vec.empty())
{
auto it = bar.end();
it--;
bar.insert(it, vec);
}
}
cout << "\n ";
您可以像这样轻松迭代:
for (auto it = bar.begin(); it != bar.end(); it++)
{
for (auto a : *it)
{
cout << a << " ";
}
cout << "\n ";
}