一、copy() 1、
copy(ilist.begin(), ilist.end(),ivec.begin()); 2、
listilist;
copy(ivec.begin(), ivec.end(), back_inserter(ilist)); 3、
copy(ivec.begin(), ivec.end(),ostream_iterator(cout, " ")); 4、
copy(ivec.rbegin(), ivec.rend(), ilist.begin());//逆迭代器,即從ivec.end()到ivec.begin()複製 5、
copy(c1.begin()+10,c1.begin()+16,c1.begin()+7);//複製一部分,會覆蓋掉原來的元素
二、copy_backward()//複製到ivec的時候從後面往前複製
copy_backward(ilist.begin(),ilist.end(),ivec.end());
三、注意
1.沒有copy_if()演算法,可以使用remove_copy_if()演算法
2.複製過程中要逆轉元素次序,使用reverse_copy()演算法
3.把容器內所有元素賦值給另乙個容器,要使用賦值操作符或
容器的assign()成員函式
4.複製過程中刪除某些元素,使用remove_copy()和
remove_copy_if()演算法
5.複製中改變元素,使用transform()或replace_copy()演算法
STL演算法 06複製元素
copy 將資料從乙個容器拷貝到另乙個容器,或將資料從容器的乙個區間拷貝到另乙個區間。copy backward 拷貝時必須保證有足夠的空間。沒有copy if 演算法,可以使用remove copy if 演算法 複製過程中要逆轉元素次序,使用reverse copy 演算法 把容器內所有元素賦值...
C STL填充演算法
include include include include include include include include include using namespace std template void printvector vectorv vectorvarr arr,arr 9 pri...
C STL演算法簡述
標準庫定義了超過100個演算法,想要高效的使用這些演算法需要了解他們的結構而不是單純記憶每個演算法的細節,以下是演算法框架的描述和理解 1 beg和end是表示元素範圍的迭代器,幾乎每個演算法都對應乙個由beg和end表示的序列,其中beg表示開始位置,end表示結束位置 2 beg2是表示第二個輸...