C++ 算法 generate ()30 Aug 2024 | 3 分钟阅读 C++ 算法 generate() 函数用于将函数对象生成的值分配给范围中的每个元素。 生成器函数由用户定义,并会连续调用以分配数字。 语法参数first: 一个前向迭代器,指向要分配值的范围中第一个元素的位置。 last: 一个前向迭代器,指向要分配值的范围中最终元素之后一个位置。 gen: 一个不带参数的函数对象,用于生成要分配给范围中每个元素的值。 返回值无 复杂度复杂度与范围 [first, last) 成线性关系。它会为每个元素调用 gen 并执行一次赋值。 数据竞争范围 [first, last) 中的对象会被修改。每个对象都只访问一次。 异常安全如果 gen、元素赋值或迭代器上的操作抛出异常,此函数会抛出异常。 请注意,无效参数会导致未定义行为。 示例 1让我们看一个简单的示例来演示 generate() 的用法 输出 1,2,4,8,16,32,64,128,256,512, 示例 2让我们看另一个简单示例 输出 1 2 3 4 5 6 7 8 9 10 示例 3让我们看另一个简单示例 输出 Vector v1 is ( 1804289383 846930886 1681692777 1714636915 1957747793 ). Deque deq1 is ( 424238335 719885386 1649760492 596516649 1189641421 ). 示例 4让我们看另一个简单示例 输出 myvector contains: 93 16 77 25 39 52 56 19 myvector contains: 1 2 3 4 5 6 7 8 下一主题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++ 算法 remove_copy_if() C++ 算法 remove_copy_if() 函数用于将范围 [first, last) 中的所有元素复制到从 result 开始的范围,除了那些 pred 返回 true 的元素,而不扰乱剩余元素的顺序。此函数无法更改...
阅读 6 分钟
C++算法shuffle() C++算法shuffle()函数通过使用g作为统一随机数生成器,将范围内的元素重新排序,将它们放置在随机位置。语法模板 <class RandomAccessIterator, class URNG> void shuffle (RandomAccessIterator first, RandomAccessIterator last, URNG&& g); 参数first:指向位置的随机访问迭代器...
阅读 2 分钟
C++ 算法 rotate_copy() C++ 算法 rotate_copy() 函数用于创建范围 [first, last) 中元素的旋转副本。序列将从源序列中间的元素开始,最后一个元素后面是第一个元素。它会将...
7 分钟阅读
C++ 算法函数 find_if() C++ Algorithm find_if() 函数返回范围中第一个满足 pred 条件的元素的值,否则返回范围的最后一个元素。语法模板 <class InputIterator, class UnaryPredicate> InputIterator find_if (InputIterator first, InputIterator last, UnaryPredicate pred); 参数 first:它指定...
阅读 2 分钟
C++ 算法 lower_bound() C++ 算法 lower_bound() 函数是二分搜索的一个版本。此函数用于返回一个迭代器,指向有序范围 [first, last) 中第一个不小于(即大于或等于)指定值的元素...
阅读 4 分钟
C++ 算法函数 count() C++ 算法 count() 函数接受 'val' 作为参数,并比较元素 'val' 在范围内的出现次数。返回该元素的出现次数。语法模板 <class InputIterator, class T> typename iterator_traits<InputIterator>::difference_type count (InputIterator first, InputIterator last, const T& val); 参数 first: 它是一个...
阅读1分钟
C++ 算法 replace_copy() C++ 算法 replace_copy() 函数用于复制范围 [first, last),并将所有 old_value 替换为 new_value。它使用运算符= 进行复制,并使用运算符== 比较元素。此函数检查每个元素...
5 分钟阅读
C++ 算法 partial_sort_copy() C++ Algorithm partial_sort_copy() 函数与 partial_sort() 函数类似,它用于重新排列范围 [first, last) 中的元素,使得 first 和 middle 之间的元素被排序,而 middle 和 last 之间的元素被...
阅读 8 分钟
C++ 算法 partition_copy() C++ Algorithm partition_copy() 函数用于将满足条件的元素复制到一个目标,将不满足条件的元素复制到另一个目标。元素必须属于指定的范围。语法模板 <class InputIterator, class OutputIterator1, ...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India