二维数组怎样加入到vector,先去掉与vector相同元素的部分.
来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/16 02:19:07
二维数组怎样加入到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都有很多元素,它们的相同元素也很多.
-
如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都有很多元素,它们的相同元素也很多.
-
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函数在这个头文件里呢.
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函数在这个头文件里呢.
二维数组怎样加入到vector,先去掉与vector相同元素的部分.
二维vector 怎么定义?
关于C++中vector< vector >的含义.
为什么我们众多的科技英语老师,从来搞不清diplacement vector与position vector的区别?
MATLAB中,如何去掉二维数组中相同的列.
ArrayList和Vector的区别
VB如何统计二维数组中相同元素的个数?
vector的iterator为vector::iterator,那vector*的iterator是什么,
vector< vector > v(m,vector(n)
vector是什么意思?
随机生成一个元素为10到40之间整数的4行5列数组,找出该二维数组的最大元素与最小元素,
C语言将二维数组A的行和列元素互换,存到二维数组B中