【STL】reverse函數用法



reverse函數的功能是反轉排序一個容器中指定元素的內容。

函數參數:reverse(first,last),其中firstlast分別指向被反轉序列中初始及末尾位置的雙向迭代器(Bidirectional iterators)。這個范圍即 [first,last) ,包括 first 到 last 間的所有元素,包括 first 指向的元素,但不包括 last 指向的元素。

無返回值

示例:

#include <iostream>
#include <list>
 
namespace ClassFoo{
void ListReverseExample1() {
    std::list<int> foo;
 
    for (int i=1; i<10; ++i) foo.push_back(i);
 
    foo.reverse();
 
    std::cout << "foo contains:";
    for (std::list<int>::iterator it=foo.begin();
        it!=foo.end(); ++it)
        std::cout << ' ' << *it;
 
    std::cout << '\n';
}
}
int main ()
{
    ClassFoo::ListReverseExample1();
    return 0;
}

 

輸出  

foo contains:9 8 7 6 5 4 3 2 1

復雜度

O(n),n 為 last - first.。

數據爭用相關

范圍 [first,last) 中的所有元素都被修改過。

異常安全性相關

如果元素交換(Swap)或操作某個迭代器拋異常,該函數才會拋異常。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM