日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

reverse函数:反转容器内容

發(fā)布時間:2023/11/30 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 reverse函数:反转容器内容 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

reverse函數(shù)可以反轉(zhuǎn)一個容器中的內(nèi)容,包含在<algorithm>庫中。

1、函數(shù)原型

reverse函數(shù)等同于下面的代碼:

template <class BidirectionalIterator> void reverse (BidirectionalIterator first, BidirectionalIterator last) {while ((first!=last)&&(first!=--last)){std::iter_swap (first,last);++first;} } reverse函數(shù)使用iter_swap來交換兩個元素。

2、參數(shù):first、last

first和last是雙向迭代器類型,reverse函數(shù)反轉(zhuǎn)的范圍是[first,last),所以包括first指向的元素,不包括last指向的元素。

3、返回值

reverse函數(shù)沒有返回值。

4、例子

// reverse algorithm example #include <iostream> // std::cout #include <algorithm> // std::reverse #include <vector> // std::vectorint main () {std::vector<int> myvector;// set some values:for (int i=1; i<10; ++i) myvector.push_back(i); // 1 2 3 4 5 6 7 8 9std::reverse(myvector.begin(),myvector.end()); // 9 8 7 6 5 4 3 2 1// print out content:std::cout << "myvector contains:";for (std::vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)std::cout << ' ' << *it;std::cout << '\n';return 0; }

輸出:
myvector contains: 9 8 7 6 5 4 3 2 1
5、復雜度 循環(huán)交換首尾元素。因此復雜度是線性的,并且循環(huán)半個數(shù)組長度。

總結(jié)

以上是生活随笔為你收集整理的reverse函数:反转容器内容的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。