• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            獨立博客: 哲學與程序

            哲學與程序

            STL之Merge

            STL中合并算法merge介紹,merge與inplace_merge。
            merge合并兩個有序的sequence,默認為<比較,可自定義比較函數comp,結果保存在[result, result + (last1 - first1) + (last2 - first2)) 中。函數定義如下:
            OutputIterator merge (InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2, OutputIterator result)
            OutputIterator merge (InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2, OutputIterator result, Compare comp)

            inplace_merge合并一個中前后兩段分別有序的序列,即[first,middle)與[middle,last)分別有序,合并這兩個子序列,并把結果保存在[first,last)中。
            inplace_merge (BidirectionalIterator first, BidirectionalIterator middle, BidirectionalIterator last);
            inplace_merge (BidirectionalIterator first, BidirectionalIterator middle, BidirectionalIterator last, Compare comp);

            #include<string>
            #include
            <algorithm>
            #include
            <iostream>
            #include
            <iterator>
            #include
            <vector>
            using namespace std;
            int main()
            {
                vector
            <int>v1;
                vector
            <int>v2;
                vector
            <int>v3;
                vector
            <int>::iterator vecitr;
                
            for(int i = 1; i <= 10; i++){
                    v1.push_back(i
            %7);
                    v2.push_back(i
            %4);
                }
                sort(v1.begin(),v1.end());
                cout 
            << "Fisrt vecter: ";
                copy(v1.begin(),v1.end(),ostream_iterator
            <int>(cout," "));
                cout 
            << endl << endl;
                sort(v2.begin(),v2.end());
                cout 
            << "Second vecter: ";
                copy(v2.begin(),v2.end(),ostream_iterator
            <int>(cout," "));
                cout 
            << endl << endl;
                cout 
            << "Merge this two vecter: ";
                merge(v1.begin(),v1.end(),v2.begin(),v2.end(),ostream_iterator
            <int>(cout," "));
                cout 
            << endl << endl;
                
            for(int i = 1; i <= 10; i++){
                    v3.push_back(i
            %7);
                }
                sort(v3.begin(),v3.end());
                
            int x = v3.size();
                
            for(int i = 1; i <= 10; i++){
                    v3.push_back(i
            %4);
                }
                vecitr 
            = v3.begin();
                advance(vecitr,x);
                sort(vecitr,v3.end());
                cout 
            << "Third vecter: ";
                copy(v3.begin(),v3.end(),ostream_iterator
            <int>(cout," "));
                cout 
            << endl << endl;
                cout 
            << "inplace_Merge third vecter: ";
                inplace_merge(v3.begin(),vecitr,v3.end());
                copy(v3.begin(),v3.end(),ostream_iterator
            <int>(cout," "));
                cout 
            << endl << endl;
                return 0;
            }
            Fisrt vecter: 0 1 1 2 2 3 3 4 5 6

            Second vecter: 
            0 0 1 1 1 2 2 2 3 3

            Merge 
            this two vecter: 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 4 5 6

            Third vecter: 
            0 1 1 2 2 3 3 4 5 6 0 0 1 1 1 2 2 2 3 3

            inplace_Merge third vecter: 
            0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 4 5 6


            posted on 2011-01-17 21:35 哲學與程序 閱讀(1604) 評論(0)  編輯 收藏 引用 所屬分類: AlgorithmC & C++C++ STL

            導航

            公告

            歡迎訪問 http://zhexue.sinaapp.com

            常用鏈接

            隨筆分類(37)

            隨筆檔案(41)

            Algorithm

            最新隨筆

            搜索

            最新評論

            獨立博客: 哲學與程序
            国产精品伊人久久伊人电影 | 久久午夜福利电影| 精品国产一区二区三区久久久狼| 久久精品综合网| 国产精品九九久久精品女同亚洲欧美日韩综合区| 免费精品久久天干天干| 久久久久亚洲AV无码观看| 久久综合鬼色88久久精品综合自在自线噜噜| 久久久精品波多野结衣| 久久人人爽人爽人人爽av| 久久亚洲中文字幕精品一区四 | 久久国产精品免费一区二区三区| 9191精品国产免费久久| 久久久久国色AV免费观看| 色偷偷88欧美精品久久久| 欧美亚洲国产精品久久高清| 综合人妻久久一区二区精品| 欧美大香线蕉线伊人久久| 久久香蕉国产线看观看99| 精品国产乱码久久久久久浪潮| 日韩中文久久| 国产午夜精品久久久久免费视| 国产精品久久免费| 色综合合久久天天给综看| 亚洲AV无码久久精品蜜桃| 一级做a爰片久久毛片人呢| 欧美久久亚洲精品| 国产婷婷成人久久Av免费高清| 欧洲性大片xxxxx久久久| 久久99精品久久久久婷婷| 国产ww久久久久久久久久| 精品国产青草久久久久福利| 热久久国产精品| 久久精品aⅴ无码中文字字幕不卡 久久精品成人欧美大片 | 1000部精品久久久久久久久| 蜜桃麻豆www久久| 亚洲另类欧美综合久久图片区| 国内精品久久人妻互换| 色婷婷综合久久久久中文字幕| 久久最近最新中文字幕大全| 中文字幕久久亚洲一区|