1. 程式人生 > >【STL】max_element()函式

【STL】max_element()函式

函式功能:指向序列之中陣列最大元素,包含在algorithm庫中。

  • 函式返回迭代器,時間複雜度O(n)。

版本一

template<class ForwardIterator>
ForwardIterator max_element(ForwardIterator first, ForwardIterator last)
{
    if(first == last)
        return first;
    ForwardIterator result = first; 
    while(++first != last)
        if(*result < *first)
            result = first;
    return result;
}

版本二

template<class ForwardIterator, class Compare>
ForwardIterator max_element(ForwardIterator first, ForwardIterator last)
{
    if(first == last)
        return first;
    ForwardIterator result = first; 
    while(++first != last)
        if(comp(*result , *first))
            result = first;
    return result;
}

運用例項:
Leetcode 969. Pancake Sorting
參考書籍

  • 《STL原始碼剖析》