关系类算法函数

简介: 关系类算法函数

equal 比较算法

includes 是不是包含

lexicographical_compare 比较序列(类似于C++字符串的比较)

max 最大值 max_element

min 最小值 min_element

mismatch(比较两个容器,第一次出现不同的地方)

equal 比较算法

这里打印出布尔类型 true ,false

要使用格式控制的头文件 iomanip

采用 boolalpha的方式

#include<iostream>
#include<algorithm>
#include<iomanip>
#include<vector>
#include<functional>
using namespace std;
int main()
{
  vector<int> first{ 1, 2, 3, 4, 5 };
  vector<int> second{ 1, 2, 3 ,4, 5, 6,7 };
  //1.equal 比较算法
  cout << boolalpha << equal(first.begin(), first.end(), second.begin(), second.end());
  return 0;
}

include (是否包含)

首先的条件是:必须要是有序的容器,否则程序会报错

#include<iostream>
#include<algorithm>
#include<iomanip>
#include<vector>
#include<functional>
using namespace std;
int main()
{
  vector<int> first{ 1, 2, 3, 4, 5 };
  vector<int> second{ 1, 2, 3 ,4, 5, 6,7 };
  //2. include 是否包含的算法
  cout << includes(first.begin(), first.end(), second.begin(), second.end());
  return 0;
}

打印的结果是false 或者

lexicographical_compare(比较序列)

第一个小于第二个,返回true

第一个大于第二个,返回false

#include<iostream>
#include<algorithm>
#include<iomanip>
#include<vector>
#include<functional>
using namespace std;
int main()
{
  vector<int> first{ 1, 2, 3, 4, 5 };
  vector<int> second{ 1, 2, 3 ,4, 5, 6,7 };
  //3.lexicograhical_compare
  cout << lexicographical_compare(first.begin(), first.end(), second.begin(), second.end());
  return 0;
}

最大值(max_element)

#include<iostream>
#include<algorithm>
#include<iomanip>
#include<vector>
#include<functional>
using namespace std;
int main()
{
  vector<int> first{ 1, 2, 3, 4, 5 };
  vector<int> second{ 1, 2, 3 ,4, 5, 6,7 };
  //4. 最大值  
  cout << max(1, 2) << endl;
  cout << *max_element(first.begin(), first.end()) << endl;
  return 0;
}

最小值(min_element)

#include<iostream>
#include<algorithm>
#include<iomanip>
#include<vector>
#include<functional>
using namespace std;
int main()
{
  vector<int> first{ 1, 2, 3, 4, 5 };
  vector<int> second{ 1, 2, 3 ,4, 5, 6,7 };
  //5.最小值
  cout << min(4, 3) << endl;
  cout << *min_element(second.begin(), second.end()) << endl;
  return 0;
}

mismatch(找到第一个不同位置的)

如果程序崩溃了,看看两个迭代器的大小是否一样

同时,

这个mismatch的返回值类型很特殊

为pair<迭代器类型, 迭代器类型>

//6. mismatch
  //返回值类型为 pair<迭代器类型,迭代器类型>   
  //pair<vector<int> :: iterator ,vector<int> :: iterator>
  auto m = mismatch(first.begin(), first.end(), second.begin(), second.end());
  cout << *m.first << endl;
  cout << *m.second << endl;


相关文章
|
2月前
|
算法 机器人 定位技术
【VRPTW】基于matlab秃鹰算法BES求解带时间窗的骑手外卖配送路径规划问题(目标函数:最优路径成本 含服务客户数量 服务时间 载量 路径长度)(Matlab代码实现)
【VRPTW】基于matlab秃鹰算法BES求解带时间窗的骑手外卖配送路径规划问题(目标函数:最优路径成本 含服务客户数量 服务时间 载量 路径长度)(Matlab代码实现)
|
1月前
|
机器学习/深度学习 传感器 算法
基于matlab瞬态三角哈里斯鹰算法TTHHO多无人机协同集群避障路径规划(目标函数:最低成本:路径、高度、威胁、转角)(Matlab代码实现)
基于matlab瞬态三角哈里斯鹰算法TTHHO多无人机协同集群避障路径规划(目标函数:最低成本:路径、高度、威胁、转角)(Matlab代码实现)
|
2月前
|
机器学习/深度学习 算法 数据挖掘
【配送路径规划】基于螳螂虾算法MShOA求解带时间窗的骑手外卖配送路径规划问题(目标函数:最优路径成本 含服务客户数量 服务时间 载量 路径长度)研究(Matlab代码实现)
【配送路径规划】基于螳螂虾算法MShOA求解带时间窗的骑手外卖配送路径规划问题(目标函数:最优路径成本 含服务客户数量 服务时间 载量 路径长度)研究(Matlab代码实现)
|
2月前
|
算法 Python
【配送路径规划】基于遗传算法求解带时间窗的电动汽车配送路径规划(目标函数:最小成本;约束条件:续驶里程、额定载重量、数量、起始点)研究(Matlab代码实现)
【配送路径规划】基于遗传算法求解带时间窗的电动汽车配送路径规划(目标函数:最小成本;约束条件:续驶里程、额定载重量、数量、起始点)研究(Matlab代码实现)
|
3月前
|
机器学习/深度学习 算法 安全
深度长文I 深度合成服务类-算法备案该怎么做?
本文详解“深度合成服务类”算法及其备案要求,涵盖定义、类型、备案流程等内容,助你全面理解合规要点。
|
11月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
256 67
|
12月前
|
存储 算法 Java
Set接口及其主要实现类(如HashSet、TreeSet)如何通过特定数据结构和算法确保元素唯一性
Java Set因其“无重复”特性在集合框架中独树一帜。本文解析了Set接口及其主要实现类(如HashSet、TreeSet)如何通过特定数据结构和算法确保元素唯一性,并提供了最佳实践建议,包括选择合适的Set实现类和正确实现自定义对象的hashCode()与equals()方法。
268 4
|
XML JavaScript 前端开发
学习react基础(1)_虚拟dom、diff算法、函数和class创建组件
本文介绍了React的核心概念,包括虚拟DOM、Diff算法以及如何通过函数和类创建React组件。
158 3
|
搜索推荐 算法 Java
现有一个接口DataOperation定义了排序方法sort(int[])和查找方法search(int[],int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法
该博客文章通过UML类图和Java源码示例,展示了如何使用适配器模式将QuickSort类和BinarySearch类的排序和查找功能适配到DataOperation接口中,实现算法的解耦和复用。
180 1
现有一个接口DataOperation定义了排序方法sort(int[])和查找方法search(int[],int),已知类QuickSort的quickSort(int[])方法实现了快速排序算法
创建KNN类
【7月更文挑战第22天】创建KNN类。
95 8

热门文章

最新文章

下一篇
oss教程