二维数组怎样加入到vector,先去掉与vector相同元素的部分.如int a[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};vector b(10,vector(3));其中b最后的元素为{16,29,7},{12,0,99},{8,10,53}.即a数组的前两个元素与vector最后

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 22:33:10
二维数组怎样加入到vector,先去掉与vector相同元素的部分.如inta[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};vectorb(10,vec

二维数组怎样加入到vector,先去掉与vector相同元素的部分.如int a[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};vector b(10,vector(3));其中b最后的元素为{16,29,7},{12,0,99},{8,10,53}.即a数组的前两个元素与vector最后
二维数组怎样加入到vector,先去掉与vector相同元素的部分.
如int a[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};
vector b(10,vector(3));其中b最后的元素为{16,29,7},{12,0,99},{8,10,53}.即a数组的前两个元素与vector最后两个元素相同,现在需要做的是把a数组那两个连续相同的一维数组去掉,然后再加到vector的后面.这里只是举例,事实上a和b都有很多元素,它们的相同元素也很多.
-

二维数组怎样加入到vector,先去掉与vector相同元素的部分.如int a[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};vector b(10,vector(3));其中b最后的元素为{16,29,7},{12,0,99},{8,10,53}.即a数组的前两个元素与vector最后
int a[4][3]={{12,0,99},{8,10,53},{1,2,13},{6,7,13}};
vector b;
for (int i = 0 ; i != 4; ++i)
{
vector tmp;
for (int j = 0;j != 3;++j)
{
tmp.push_back(a[i][j]);
}
if (b.end() == find (b.begin(),b.end(),tmp))
{
b.push_back(tmp);
}
}
我没调,不过应该差不多.只要再生成一个vector的临时对象,再调用vector重载的==函数就行了.
挺简单的.你试试看吧.
记得加#include .find函数在这个头文件里呢.