• <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>

            The Fourth Dimension Space

            枯葉北風寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢令

            TopCoder競賽:C++, STL 用法快速入門(轉)

            下面總結了一些題目中常用的STL庫的用法。

             

             
            #include <algorithm>
            #include <string>
            #include <vector>
            #include <map>
            #include <iostream>
             
            using namespace std;
             
            //遞歸
            int GetN(int n)
            {
            if (n==1) return 1;
            else return GetN(n-1);
            }
             
            void TestSTL_main( int argc, char* argv[] )
            //void main( int argc, char* argv[] )
            {
            /******** STL **********/
             
            //string的用法
            {
            string s = "mmmmm";
            string s2("ss22");
            s2.insert(2,"kkkkk"); //把"kkkkk"插到s2的第2個位置之前(位置從0開始)
            s2+=s+"44444"+'c';
            const char *pc = s.c_str();//把string轉成C-style的string,以\0終了
            const char *ptr1 = s.data();;//把string轉成字符串
            if (s2[2] == 'k') s2[2]='C';
            s+="jkl";
            s+='m';
            s.push_back('\n'); //把'\n'(換行符)放在s的最后一個位置
            reverse(s.begin(), s.end()); //反轉
            basic_string <char>::iterator str_Iter; //遍歷
            str_Iter = s.begin();
            }
             
            //vector的用法
            {
            vector<int> v;
            v.push_back(8); //向v中插入元素,元素的值是8
            int iLen = (int)v.size();
            for(int i=0;i<iLen;i++)
            {
            int k = v[0]; //k==8
            }
            }
             
            //map的用法
            {
            map<int, int> mp;
            for(int i=0;i<3;i++)
            {
            mp[i]=i*2; //通過[第一個元素]來訪問第二個元素
            }
             
            int total = 100;
            map<int, int>::iterator it = mp.begin();
            for(;it!=mp.end();it++) //遍歷mp
            {
            total+=it->second; //通過iterator it來訪問第二個元素
            }
            cout<<"total="<<total<<endl;
            }
             
            //算法
            int n = GetN(5); //遞歸n!=n*(n-1)*(n-2)*…*1
            int aa=10,bb=15;
            int maxi = max(aa,bb); //最大值
            int mini = min(aa,bb); //最小值
            int absi = abs(-12); //絕對值
            vector<string> v;
            v.push_back("hello");
            v.push_back("123");
            v.push_back("no");
            sort(v.begin(),v.end()); //按照字母順序,把v里面的元素排序
            int savei;
            sscanf(v[0].c_str(), "%d", &savei); //把字符串“123”轉換成數字123
            cout<<"savei="<<savei<<endl;
            char buf[100];
            sprintf(buf,"v[1]=%d",savei); //把內容打印進字符串
            cout<<"buf="<<buf<<endl;
             
            }

            posted on 2009-10-27 15:35 abilitytao 閱讀(744) 評論(2)  編輯 收藏 引用

            評論

            # re: TopCoder競賽:C++, STL 用法快速入門 2009-10-27 16:33 OwnWaterloo

            代碼很好看。

            GetN(int n)始終返回1? 復制時弄錯了?
              回復  更多評論   

            # re: TopCoder競賽:C++, STL 用法快速入門 2009-10-27 17:00 abilitytao

            @OwnWaterloo
            可能是原作者寫錯了  回復  更多評論   

            色综合久久精品中文字幕首页| 久久夜色精品国产噜噜噜亚洲AV| 91久久香蕉国产熟女线看| 久久国产精品国语对白| 亚洲精品国产第一综合99久久| 精品久久无码中文字幕| 久久亚洲欧洲国产综合| 亚洲成色www久久网站夜月| 亚洲国产精品人久久| 色88久久久久高潮综合影院| 国产精品成人99久久久久91gav| 中文国产成人精品久久不卡| 国产成人精品久久一区二区三区av | 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 人妻无码精品久久亚瑟影视 | 久久久久国色AV免费观看| 久久99热这里只有精品国产| 国产巨作麻豆欧美亚洲综合久久| 精品综合久久久久久97| 色8激情欧美成人久久综合电| 国产精品岛国久久久久| 狠狠精品久久久无码中文字幕| 久久精品亚洲男人的天堂 | 久久久这里有精品| 久久97久久97精品免视看| 欧美精品一区二区精品久久| 国内精品久久久人妻中文字幕| 久久久久精品国产亚洲AV无码| 久久伊人精品青青草原日本| 国产精品99久久精品爆乳| 国产精品久久久久久影院| 久久久久久午夜成人影院 | 久久夜色精品国产| 久久青青草原精品国产不卡| 国产—久久香蕉国产线看观看| 久久精品人人做人人爽97| 久久婷婷五月综合97色一本一本| 色诱久久久久综合网ywww| 午夜精品久久久久久99热| 五月丁香综合激情六月久久| 亚洲AV无码久久精品狠狠爱浪潮|