C++ Algorithm set_union()2024年8月30日 | 阅读4分钟 C++ 算法 set_union() 函数用于查找两个已排序范围 [first1, last1) 和 [first2, last2) 的并集,该并集由存在于任一集合或两个集合中的元素组成。 对于第一个版本,使用运算符 < 比较元素,或者对于第二个版本,使用给定的二元比较函数 comp 比较元素。 语法参数first1:一个输入迭代器,指向两个已排序源序列中第一个序列的第一个元素。 last1:一个输入迭代器,指向两个已排序源序列中第一个序列的最后一个元素之后的元素。 first2:一个输入迭代器,指向第二个已排序源序列的第一个元素。 last2:一个输入迭代器,指向第二个已排序源序列的最后一个元素之后的元素。 comp:一个用户定义的二元谓词函数,接受两个参数,如果这两个参数有序则返回true,否则返回false。它遵循严格的弱排序来对元素进行排序。 result:一个输出迭代器,指向目标范围中第一个元素的位置。 返回值此函数返回一个迭代器,指向构造范围的末尾。 复杂度复杂性与 [first1, last1) 和 [first2, last2) 之间的距离呈线性关系:执行最多 2*(count1+count2)-1 次比较。其中 count1 = last1- first1 且 count2 = last2- first2。 数据竞争访问范围 [first1, last1) 和 [first2. last2) 中的对象。 修改 result 和返回值之间范围内的对象。 异常如果任何元素比较、元素赋值或迭代器上的操作抛出异常,此函数将抛出异常。 注意:无效参数会导致未定义行为。示例 1让我们看一个简单的示例来演示 set_union() 的用法 输出 1 2 3 4 5 6 示例 2让我们看另一个简单示例 输出 First array contains: 5 10 15 20 25 Second array contains: 50 40 30 20 10 The union has 8 elements: 5 10 15 20 25 30 40 50 示例 3让我们看另一个简单的示例,以找出所有同时参加两个科目的学生列表 输出 Students in first subject: Nikita Divya Deep Kashish Students in second subject: Aman Nikita Amita Deep Students attending both subjects are: Aman Amita Deep Divya Kashish Nikita 示例 4让我们看一个简单的例子 输出 A B C D E F 下一主题C++ 算法 |
C++ 算法 iter_swap() C++ 算法 iter_swap() 交换两个迭代器 a 和 b 所指向的元素。语法模板 <class ForwardIterator1, class ForwardIterator2> void iter_swap (ForwardIterator1 a, ForwardIterator2 b); 参数 a: 要交换值的其中一个前向迭代器。b: 要交换值的第二个前向迭代器...
7 分钟阅读
C++ 算法 partition() C++ 算法 partition() 函数用于根据其参数中提到的给定谓词(条件)对元素进行分区。如果容器被分区,则此函数返回 true,否则返回 false。语法模板 <class BidirectionalIterator, class UnaryPredicate> BidirectionalIterator partition (BidirectionalIterator first, BidirectionalIterator last, UnaryPredicate...
5 分钟阅读
C++ 算法 replace_copy() C++ 算法 replace_copy() 函数用于复制范围 [first, last),并将所有 old_value 替换为 new_value。它使用运算符= 进行复制,并使用运算符== 比较元素。此函数检查每个元素...
5 分钟阅读
C++ 算法函数 is_permutation() C++ Algorithm is_permutation() 函数比较两个容器中的元素,如果两个容器中的所有元素都匹配(即使顺序不同),则返回 true。第一个范围是 [first1, last1),第二个范围是 [first2, last2)。..
阅读1分钟
C++ 算法 _permutation () C++ 算法 _permutation() 函数用于将范围 [first, last) 中的元素重新排列成字典序更大的排列。排列是指一组事物或数字可以被排序的几种可能方式中的每一种,或者...
阅读 6 分钟
C++ 算法 equal_range() C++ 算法 equal_range() 函数是二分搜索的一个版本。此函数用于返回子范围的下限和上限,该子范围包含范围 [first, last) 中所有与 val 等效的元素。其中子范围定义为...
7 分钟阅读
C++ 算法函数 all_of() C++ 算法 all_of() 函数在 'pred' 参数的值为 true 时返回 true。该值对于范围 [first, last] 中的所有元素都应为 true。语法模板 <class InputIterator, class UnaryPredicate> bool all_of (InputIterator first, InputIterator last, UnaryPredicate pred); 参数 first: 它指定了...
阅读1分钟
C++ 算法函数 move backward () 该函数用于向后移动元素,它接受三个参数,然后移动属于范围 [first,last) 的元素。元素的移动以相反的顺序开始,终止点在“result”处。语法模板<class BidirectionalIterator1,...
阅读 2 分钟
C++ 算法 is_partitioned() C++ 算法 is_partitioned() 用于测试范围 [first, last) 是否根据谓词进行了分区。换句话说,范围中所有满足谓词的元素都在序列的开头。如果范围为空...
阅读 4 分钟
C++ 算法 swap() 函数 C++ 算法 swap() 函数交换或说互换两个引用容器的值。语法 template<class T> void swap(T& a, T& b); 参数 a: 它是具有某些值的第一个容器。b: 它是具有某些值的另一个容器。返回值 此函数仅交换值...
阅读 2 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India