判断两个vector数组是否相等

这篇具有很好参考价值的文章主要介绍了判断两个vector数组是否相等。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

判断两个vector数组是否相等是可以直接使用==或者!=的
#include<bits/stdc++.h>
using namespace std;
vector<int> vt1,vt2;
int main()
{
	for(int i=1;i<=4;i++)
	{
		vt1.push_back(i);
		vt2.push_back(i);
	}
	vt1.push_back(5);
	if(vt1==vt2) cout<<"vt1==vt2"<<endl;
	else if(vt1<vt2) cout<<"vt1<vt2"<<endl;
	else if(vt1>vt2) cout<<"vt1>vt2"<<endl;
	return 0;
} 
因为vector内部都进行了相关运算符的重载,还可以进行比较大小

template< class T, class Alloc >
bool operator==( const vector<T,Alloc>& lhs,
                 const vector<T,Alloc>& rhs );

template< class T, class Alloc >
bool operator!=( const vector<T,Alloc>& lhs,
                 const vector<T,Alloc>& rhs );
template< class T, class Alloc >
bool operator<( const vector<T,Alloc>& lhs,
                const vector<T,Alloc>& rhs );

template< class T, class Alloc >
bool operator<=( const vector<T,Alloc>& lhs,
                 const vector<T,Alloc>& rhs );

template< class T, class Alloc >
bool operator>( const vector<T,Alloc>& lhs,
                const vector<T,Alloc>& rhs );

template< class T, class Alloc >
bool operator>=( const vector<T,Alloc>& lhs,
                 const vector<T,Alloc>& rhs );

下面这道简单搜索题就用到了这个性质,浅看一下吧

【问题描述】给定一个n个整数的集合X={x1,x2,…xn}(X中可能包含重复元素)和整数y,找出和等于y的X的子集Y。例如说,如果X={10,30,20,60,40,50},和y=60,则有4种不同的解,他们分别是{10,20,30},{10,50}{20,40},{60}。
【输入形式】输入的第1行包含两个整数n和y,分别表示集合X的长度和目标整数y。接下来1行包含n个整数(整数之间以空格分割),表示X中的n个元素。
【输出形式】输出1行包含1个整数,表示不同的解决方案(不能包含重复的方案数)。
【样例输入】

6 60

10 30 20 60 40 50
【样例输出】

4
代码:文章来源地址https://www.toymoban.com/news/detail-525712.html

#include<bits/stdc++.h>
using namespace std;
const int N=1e3+10;
int n,y,ans;
int a[N],b[N];
vector<int>vt[N];
set<vector<int>>st;
void dfs(int x,int k,int sum)
{
	//剪枝操作省略(前缀和剪枝) 
	if(sum>y) return;
	b[k]=a[x];
	if(sum==y)
	{
		ans++;
		for(int i=1;i<=k;i++)
			vt[ans].push_back(b[i]);
		st.insert(vt[ans]);
		return;	
	}
	if(sum<y)
	{
		for(int i=x+1;i<=n;i++)
			dfs(i,k+1,sum+a[i]);
	}
}
int main()
{
	cin>>n>>y;
	for(int i=1;i<=n;i++) cin>>a[i];
	sort(a+1,a+n+1);
	dfs(0,1,0);
	cout<<st.size()<<endl;
	return 0;
} 
//测试
//5 30
//10 10 10 10 20
//结果:2

到了这里,关于判断两个vector数组是否相等的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java 判断两个List是否包含 判断两个list相等

    java 判断两个List是否包含 判断两个list相等 https://blog.51cto.com/u_12855/7333853 1、直接使用equals()比较 众所周知,两个列表具有完全相同的元素并且具有完全相同的顺序时,它们是相等的。因此, 如果我们业务要求两个list顺序一致,可以使用equals()方法进行相等性检查: 即使

    2024年02月04日
    浏览(66)
  • 在R中比较两个矩阵是否相等

    目录 方法一:使用all.equal()比较两个R对象是否近似相等 方法二:使用identical比较两个R对象是否精确相等。 使用函数:all.equal(x,y) 比较两个R对象x和y是否 近似 相等 在帮助文件中的解释:  从帮助文件中的解释,我们可以知道all.equal(x,y)用于比较x与y是否近似相等。如果他们

    2024年02月14日
    浏览(44)
  • Go语言如何判断两个对象是否相等

    在编程中,判断两个对象是否相等是一项常见的任务,同时判断对象是否相等在很多情况下都非常重要,例如: 单元测试 :编写单元测试时,经常需要验证函数的输出是否符合预期,这涉及到比较对象是否相等。 数据结构操作 :在使用 map 等数据结构时,可能需要判断两个对

    2024年02月07日
    浏览(145)
  • 重写 equals 方法,实现比较两个对象值是否相等

    == 用于比较值的引用地址是否一致,而 equals 用于比较值的内容是否一致,下面我们来比较一下这两个值是否相同 可以发现它的值是相同的 下面我们来对两个对象的值进行比较 可以发现值的内容确实相同,但比较的结果是 false 其实在 object 中的 equals 底层使用的还是 == 进行

    2024年02月07日
    浏览(63)
  • 在JS中如何判断两个对象是否相等

    在JavaScript中,判断两个对象是否相等有多种方法,取决于你对 相等 的定义以及对象属性的类型。以下是几种常见的方法:   1. 严格相等运算符 (===) 使用 === 运算符可以比较两个对象是否引用同一个对象。如果两个变量引用了同一个对象,则它们是相等的,否则它们是不相等

    2024年02月03日
    浏览(60)
  • C语言比较两个字符串是否相等的案例讲解

    思路分析 比较两个字符串是否相等要看两个字符串的长度和内容是否一样,如果长度和内容有一个不一样那么这两个字符串不相等。 方法1:strcmp函数可以比较2个字符串的大小和内容是否一样,我们可以使用这个函数来进行判断。 知识补充: strcmp函数用来比较两个字符串并

    2024年02月16日
    浏览(67)
  • js 判断两个字符串是否相等(有两种方法)

    使用比较运算符判断两个字符串是否相等 可以使用比较运算符 === 或 == 来判断两个字符串是否相等。例如: 在上述代码中,我们定义了两个字符串变量 str1 和 str2 ,并使用 === 运算符来比较它们的值。如果两个字符串相等,则输出 两个字符串相等 ;否则输出 两个字符串不相

    2024年02月05日
    浏览(78)
  • [开发|java] java 比较两个对象的指定属性的值是否相等

    Java中比较两个对象的指定属性的值是否相等,可以使用Apache Commons Lang库中的EqualsBuilder类。EqualsBuilder提供了一种便捷的方法来比较两个对象的属性值是否相等,具体步骤如下: 通过构造器创建一个EqualsBuilder对象。 调用EqualsBuilder对象的append方法,传入需要比较的两个对象以

    2024年02月16日
    浏览(57)
  • 【python基础知识】python中怎么判断两个字符串是否相等

    目录 有哪些判断方法 1. == 运算符 2. is 运算符 有哪些特殊情况 1. 字符串中包含空格、换行符、制表符等特殊字符 2. 字符串编码格式的不同 3. 字符串对象的创建方式不同 注意事项 1. 避免使用is运算符进行字符串比较 2. 注意空格、换行符、制表符等特殊字符的影响 3. 注意字符

    2024年02月08日
    浏览(85)
  • JavaScript判断两个数组相等的四类方法

    在JavaScript中,数组本质上是一种特殊的对象,它的类型值会返回 object 。 如果我们需要比较两个数组是否相等,不能像比较基本类型(String、Number、Boolean等)一样,使用 === (或 == ) 来判断,所以如果要比较数组是否相等,需要使用一些特殊方法。关于JS类型的判断,可见博文

    2024年02月09日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包