C++ 算法 sort()2024年8月30日 | 阅读4分钟 C++ 算法 sort() 函数用于将范围 [first, last) 内的元素按升序排序。 第一个版本使用运算符 < 比较元素,第二个版本使用 comp 比较元素。 语法参数first:指向要排序范围内的第一个元素的随机访问迭代器。 last:指向要排序范围内的最后一个元素之后一个位置的随机访问迭代器。 comp:一个用户定义的二元谓词函数,接受两个参数,如果这两个参数有序则返回true,否则返回false。它遵循严格的弱排序来对元素进行排序。 返回值无 复杂度排序的平均复杂度为 N*log2 (N),其中 N = last - first。 数据竞争范围 [first, last) 中的对象被修改。 异常如果任何元素比较、元素交换或迭代器上的操作抛出异常,此函数将抛出异常。 注意:无效参数会导致未定义行为。示例 1让我们看一个简单的例子来演示 sort() 的用法 输出 Before sorting: 3 1 4 2 5 After sorting: 1 2 3 4 5 示例 2让我们看另一个简单示例 输出 myvector contains: 12 26 32 33 45 53 71 80 示例 3让我们看另一个简单示例 输出 Sorted list of functional programming languages - C# C++ Java Lisp Pascal Python Sql Reverse Sorted list of functional programming languages - Sql Python Pascal Lisp Java C++ C# 示例 4让我们看另一个简单示例 输出 Original random shuffle vector vec1 data: 4 10 11 15 14 5 13 1 6 9 3 7 8 2 0 12 Sorted vector vec1 data: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Re sorted (greater) vector vec1 data: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 User defined re sorted vector vec1 data: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 下一主题C++ 算法 |
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++ 算法函数 any_of() C++ 算法 any_of() 函数测试范围中每个元素的 'pred' 值,如果任何元素的 pred 值为 true,则函数返回 true,否则返回 false。语法模板 <class InputIteratir, class UnaryPredicate> bool any_of (InputIterator first, InputIterator last, UnaryPredicate...
阅读1分钟
C++ 算法 is_sorted_until() C++ 算法 is_sorted_until() 函数用于查找范围内的第一个未排序元素。这意味着它返回一个迭代器,指向范围 [first, last) 中不遵循升序的第一个元素。元素使用运算符 < 进行比较...
阅读 4 分钟
C++ 算法函数 equal() C++ 算法 equal() 函数比较两个容器中的元素,如果两个容器中的所有元素都匹配,则返回 true。第一个范围是 [first1,last1),第二个范围从 first2 开始。语法 template<class InputIterator1, class...
阅读 2 分钟
C++ 算法函数 count_if() C++ 算法 count_if() 函数有一个 'pred' 值,并返回范围 [first, last) 中 pred 值为 true 的元素的数量。语法模板 <class InputIterator, class UnaryPredicate> typename iterator_traits<InputIterator>::difference_type count_if(InputIterator first, InputIterator last,UnaryPredicate pred); 参数 first: 它是一个输入迭代器...
阅读1分钟
C++ 算法 partition() C++ 算法 partition() 函数用于根据其参数中提到的给定谓词(条件)对元素进行分区。如果容器被分区,则此函数返回 true,否则返回 false。语法模板 <class BidirectionalIterator, class UnaryPredicate> BidirectionalIterator partition (BidirectionalIterator first, BidirectionalIterator last, UnaryPredicate...
5 分钟阅读
C++ 算法 reverse_copy() C++ 算法 reverse_copy() 函数用于将范围 [first, last) 中的元素以相反的顺序复制到从 result 开始的另一个范围。语法模板 <class BidirectionalIterator, class OutputIterator> OutputIterator reverse_copy (BidirectionalIterator first, BidirectionalIterator last, OutputIterator result); 注意:...
阅读 4 分钟
C++ 算法函数 find() C++ 算法 find() 函数指定参数列表中的一个值,在范围内搜索该值,迭代器从第一个元素开始搜索并一直到最后一个元素,如果找到该元素...
阅读 2 分钟
C++ 算法 merge() C++ 算法 merge() 函数用于将两个已排序的范围 [first1, last1) 和 [first2, last2) 合并成一个从 result 开始的已排序范围。第一个版本使用运算符 < 比较元素,第二个版本使用给定的二进制比较函数 comp 比较元素...
阅读 6 分钟
C++ 算法 unique() C++ Algorithm unique() 函数用于转换序列,使得每个连续的重复元素都成为唯一的元素。第一个版本使用 operator== 比较元素,第二个版本使用给定的二元谓词 pred。语法相等性 (1) 模板 <class...
7 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India