• 泛型算法(二十)之最大最小值算法


    1、min(const T& a, const T& b):两个值中的最小值。

        std::cout << std::min(2, 6);
        //打印结果:2

    2、min(const T& a, const T& b, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    3、max(const T& a, const T& b):两个值中的最大值。

        std::cout << std::max(2, 6);
        //打印结果:6

    4、max(const T& a, const T& b, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    5、min_element(ForwardIterator first, ForwardIterator last):返回序列中最小值的迭代器。

        std::vector<int> c = {1, 5, 0, 8, 11, 4};
        //找出c中最小的元素
        auto iter = std::min_element(c.begin(), c.end());
        //输出
        std::cout << *iter;
        //打印结果:0

    6、min_element(ForwardIterator first, ForwardIterator last, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    7、max_element(ForwardIterator first, ForwardIterator last):返回序列中最大值的迭代器。

        std::vector<int> c = {1, 5, 0, 8, 11, 4};
        //找出c中最小的元素
        auto iter = std::max_element(c.begin(), c.end());
        //输出
        std::cout << *iter;
        //打印结果:11

    8、max_element(ForwardIterator first, ForwardIterator last, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    9、max(initializer_list<T> il, Compare comp):C11版本。

        std::initializer_list<int> ilist = { 1, 3, 0, 9, 6, 4, 2 };
        int max = std::max(ilist);
        std::cout << max;
        //打印结果:9

    10、minmax(const T& a, const T& b):C11版本,返回由最小值与最大值构成的std::pair。

        auto p = std::minmax(16, 8);
        std::cout <<"("<< p.first <<","<< p.second<<")";
        //打印结果:(8, 16)

    11、minmax(const T&a, const T&b, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    12、minmax(initializer_list<T> il):C11版本,返回由初始化列表中最小元素与最大元素构成的std:pair。

        auto p = std::minmax({ 1, 3, 0, 9, 6, 4, 2 });
    
        std::cout << p.first <<","<< p.second;
        //打印结果:0,9

    13、minmax(initializer_list<T> il, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

    14、minmax_element(ForwardIterator first, ForwardIterator last):C11版本,返回由序列中最小元素与最大元素构成的std:pair。

        std::vector<int> c = {1, 3, 0, 9, 6, 4, 2};
        auto p = std::minmax_element(c.begin(), c.end());
        std::cout << *p.first<<","<<*p.second;
        //打印结果:0,9

    15、minmax_element(ForwardIterator first, ForwardIterator last, Compare comp):重载版本。

    自己实现comp,向算法定制操作。

  • 相关阅读:
    Hive 窗口函数LEAD LAG FIRST_VALUE LAST_VALUE
    xargs命令
    left semi join VS left join
    静态类静态属性静态方法
    DATASET()用法
    更改数据,ExecuteNonQuery()
    SqlDataReader
    数据适配器
    数据库连接-引用配置文件
    sql获取当前时间
  • 原文地址:https://www.cnblogs.com/dongerlei/p/5146068.html
Copyright © 2020-2023  润新知