青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

huyutian

他強(qiáng)由他強(qiáng),清風(fēng)拂山崗;他橫由他橫,明月照大江。他自狠來他自惡,我自一口真氣足

  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  20 隨筆 :: 47 文章 :: 22 評(píng)論 :: 0 Trackbacks
/*
list: 等同于雙向鏈表,內(nèi)存空間可以是不連續(xù)的,通過指針來進(jìn)行數(shù)據(jù)的訪問
   優(yōu): 1)插入/刪除效率高
   缺: 1)不支持隨機(jī)存取,查詢效率較低
*/

#include 
<iostream>
#include 
<string>
#include 
<list>
using namespace std;

void printList(list<int> nList)
{
//使用迭代器
//list<int>::iterator iter;
//for ( iter = nList.begin(); iter != nList.end(); iter++)
//{
// cout<<*iter<<", ";
//}

//使用迭代器指針
list<int>::iterator *pIter = new list<int>::iterator; //list<int>::iterator *pIter;error,原因見vector相應(yīng)函數(shù)
if ( NULL == pIter )
{
   
return;
}

for (*pIter = nList.begin(); *pIter != nList.end(); (*pIter)++//此處不可寫成*pIter++
{
   cout
<<**pIter<<"";
}

cout
<<endl;
}

int main()
{
//創(chuàng)建list
list<int> l1; //創(chuàng)建一個(gè)沒有任何元素的list
list<int> l2(10); //創(chuàng)建一個(gè)有n個(gè)元素的list,每個(gè)元素值為默認(rèn)
list<double> l3(109.3); //創(chuàng)建具有10個(gè)元素的list,每個(gè)元素的初始值為9.3
list<double> l4(l3); //通過拷貝一個(gè)list對(duì)象的元素,創(chuàng)建一個(gè)新的list對(duì)象
int iArray[] ={31019};
list
<int> l5(iArray, iArray + 3);//將另一個(gè)list對(duì)象的迭代器區(qū)間[first, last)所指的元素,拷貝到新創(chuàng)建的list對(duì)象中

//初如化賦值 :用push_back將元素依次鏈入LIST中
for (int i = 1; i<6; i++)
   l1.push_back(i);

list
<int>::iterator iter;
cout
<<"printList(l1): "<<endl;
printList(l1);

//元素插入 :尾部添加用push_back(); 首部插入用push_front();任意位置插入用insert(&pos, elem) 
//下面語句error:list與vector不同,因?yàn)榇鎯?chǔ)方式上的差異, list不能+n,只能++,
//這種情況下最好還是通過迭代器++為好
//l1.insert((l1.begin())+1, 100); 
l1.insert(++l1.begin(), 100); //或者用iter=l1.begin(); iter++;l1.insert(iter, 100);
cout<<"++l1.insert(l1.begin(),100) (if use l1.begin()+1 is error) = "<<endl;
printList(l1);

cout
<<"l1.push_back(200) = "<<endl;
l1.push_back(
200);
printList(l1);
cout
<<"l1.push_front(-200) = "<<endl;
l1.push_front(
-200);
printList(l1);

//元素刪除: 尾部刪除用pop_back(); 首部刪除用pop_front(); 
//指定元素的刪除,位置用erase(&pos); 區(qū)間用erase(&first_pos, &last_pos)
//刪除所有元素用 clear(); 
//刪除list中所有元素值為value的元素用remove(value)
cout<<"l1.pop_back() = "<<endl;
l1.pop_back();
printList(l1);
cout
<<"l1.pop_front() = "<<endl;
l1.pop_front();
printList(l1);

cout
<<"l1.erase(++l1.begin()) = "<<endl;
l1.erase(
++l1.begin());
printList(l1);

iter
= l1.begin();
iter
++;
iter
++;
cout
<<"iter=l1.begin; iter++;iter++; l1.erase(l1.begin(), iter) = "<<endl;
l1.erase(l1.begin(), iter);
printList(l1);
cout
<<"l1.remove(100) = "<<endl;
l1.remove(
100);
printList(l1);
cout
<<"l1.remove(4) = "<<endl;
l1.remove(
4);
printList(l1);

//其它
cout<<"其它: "<<endl;
list
<int> listTest;
for (int i =1; i<6; i++)
   listTest.push_back(i
*100);
cout
<<"printList(listTest) = "<<endl;
printList(listTest);
//swap函數(shù)
cout<<"after l1.swap(listTest), l1 = "<<endl;
l1.swap(listTest);
printList(l1);

//splice函數(shù) 
//void splice(&pos, list &x):將list x歸并到當(dāng)前l(fā)ist的&pos之前,同時(shí)list x將被清空
//void splice(&pos, list &x, &x.pos),將list x中迭代器x.pos處的元素歸并到當(dāng)前l(fā)ist,同時(shí)被歸并的元素將被清空
cout<<"after l1.splice(l1.begin(), listTest):"<<endl;
l1.swap(listTest); 
//恢復(fù)
l1.splice(l1.begin(), listTest);
cout
<<"l1 = "<<endl;
printList(l1);
cout
<<"listTest = "<<endl;
printList(listTest);

l1.clear();
for (int i = 1; i<6; i++)
   l1.push_back(i);
for (int i =1; i<6; i++)
   listTest.push_back(i
*100); //恢復(fù)
cout<<"after l1.splice(++l1.begin(), listTest, --listTest.end()) :"<<endl;
l1.splice(
++l1.begin(), listTest, --listTest.end());
cout
<<"l1 = "<<endl;
printList(l1);
cout
<<"listTest = "<<endl;
printList(listTest);

//merge函數(shù)(略)歸并的兩鏈表都是是有序性,此函數(shù)才有意義
//sort
cout<<"now l1 is set as : "<<endl;
l1.clear();
for (int i = 9; i >= 0; i--)
   l1.push_back(i);
printList(l1);

cout
<<"l1.sort() = "<<endl;
l1.sort();
printList(l1);

cout
<<"l1.empty() = "<<l1.empty()<<", l1.size() = "<<l1.size()<<endl;
cout
<<"after l1.clear(): "<<endl;
l1.clear();
cout
<<"l1.empty() = "<<l1.empty()<<", l1.size() = "<<l1.size()<<endl;
}




//測試結(jié)果
printList(l1):
12345,
++l1.insert(l1.begin(),100) (if use l1.begin()+1 is error
11002345,
l1.push_back(
200=
11002345200,
l1.push_front(
-200=
-20011002345200,
l1.pop_back() 
=
-20011002345,
l1.pop_front() 
=
11002345,
l1.erase(
++l1.begin()) =
12345,
iter
=l1.begin; iter++;iter++; l1.erase(l1.begin(), iter)
345,
l1.remove(
100=
345,
l1.remove(
4=
35,
其它:
printList(listTest) 
=
100200300400500,
after l1.swap(listTest), l1 
=
100200300400500,
after l1.splice(l1.begin(), listTest):
l1 
=
10020030040050035,
listTest 
=

after l1.splice(
++l1.begin(), listTest, --listTest.end())
l1 
=
15002345,
listTest 
=
100200300400,
now l1 
is set as :
9876543210,
l1.sort() 
=
0123456789,
l1.empty() 
= 0, l1.size() = 10
after l1.clear():
l1.empty() 
= 1, l1.size() = 0
posted on 2010-02-07 23:59 胡雨田 閱讀(4881) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 編程技巧

評(píng)論

# re: 轉(zhuǎn)貼:STL之list之用法小結(jié)[未登錄] 2010-05-27 19:08 jack
轉(zhuǎn)我的貼,沒有注明地址,哎。。  回復(fù)  更多評(píng)論
  

# re: 轉(zhuǎn)貼:STL之list之用法小結(jié) 2012-02-03 09:50 coco
非常好的總結(jié)  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            国产精品人人做人人爽| 亚洲精选在线| 国产精品香蕉在线观看| 欧美成人一区二区三区在线观看 | 久久精品国产亚洲5555| 在线视频欧美日韩| 亚洲国产三级网| 久久久蜜桃一区二区人| 午夜精品久久久久久久99樱桃| 亚洲美女视频在线观看| 免费观看日韩av| 美女网站久久| 免费成人你懂的| 另类天堂av| 久久综合色一综合色88| 久久综合中文| 欧美激情2020午夜免费观看| 欧美片第1页综合| 欧美日韩另类一区| 国产精品ⅴa在线观看h| 久久国内精品自在自线400部| 欧美精品免费视频| 免费亚洲婷婷| 亚洲视频在线视频| 久色成人在线| 亚洲国产成人av在线| 夜夜嗨网站十八久久| 一区二区日韩免费看| 亚洲一区视频在线观看视频| 久久成人精品| 免费欧美日韩| 亚洲狼人精品一区二区三区| 中文在线资源观看视频网站免费不卡| 亚洲一区二区欧美| 香蕉久久精品日日躁夜夜躁| 牛牛影视久久网| 午夜精品理论片| 久久日韩精品| 亚洲乱码国产乱码精品精98午夜| 亚洲图片欧洲图片日韩av| 夜夜精品视频| 亚洲国产精品第一区二区三区| 久久久久国产一区二区| 先锋影音久久久| 久久婷婷人人澡人人喊人人爽| 亚洲成色777777在线观看影院| 一区二区三区导航| 久久久久成人精品免费播放动漫| 欧美激情中文字幕一区二区 | 国产精品美女主播在线观看纯欲| 国产一区清纯| 99精品欧美一区| 欧美一级一区| 亚洲高清免费| 欧美一级电影久久| 欧美日韩精品系列| 欧美日韩精品一区二区| 一区二区在线不卡| 亚洲国产成人av好男人在线观看| 亚洲国产精品成人综合| 亚洲另类自拍| 欧美国产精品人人做人人爱| 亚洲字幕在线观看| 欧美精品在线一区| 国产精品入口麻豆原神| 91久久久久| 久久精品国产亚洲aⅴ| 99在线观看免费视频精品观看| 久久成人这里只有精品| 国产私拍一区| 欧美伊久线香蕉线新在线| 亚洲国产精品成人综合色在线婷婷| 亚洲国产精品成人综合| 国产一区二区丝袜高跟鞋图片| 影音先锋中文字幕一区二区| 一区二区三区日韩欧美精品| 免费不卡中文字幕视频| 欧美在线观看视频一区二区| 国产精品日韩欧美一区二区| 一本久道久久久| 亚洲婷婷免费| 国产精品久久久久高潮| 国产综合久久| 久久精品国产精品亚洲精品| 香蕉久久a毛片| 欧美午夜精品久久久久久久 | 亚洲国产美国国产综合一区二区| 久久电影一区| 亚洲黄色在线看| 免费91麻豆精品国产自产在线观看| 伊伊综合在线| 一区二区三区欧美亚洲| 日韩一本二本av| 国产精品久久婷婷六月丁香| 久久大逼视频| 久久蜜桃精品| 亚洲免费成人av电影| 亚洲黄一区二区| 欧美性事在线| 久久蜜桃av一区精品变态类天堂| 裸体女人亚洲精品一区| 久久久精品国产一区二区三区 | 欧美一区二区视频97| 久久精品国产第一区二区三区最新章节| 国产在线日韩| 欧美资源在线观看| 久久天堂国产精品| 一区二区久久久久| 亚洲欧美国产高清| 亚洲国产成人精品久久| 99国产一区| 国内精品久久久久久| 亚洲电影中文字幕| 国产精品v一区二区三区| 日韩一级不卡| 亚洲影视综合| 亚洲激情在线激情| 在线一区二区三区四区五区| 黄色在线成人| 在线中文字幕日韩| 亚洲福利精品| 亚洲图片欧美日产| 一区免费在线| 蜜臀va亚洲va欧美va天堂| 欧美日韩伊人| 欧美一区二区免费| 欧美成人免费va影院高清| 欧美永久精品| 欧美日韩另类综合| 美日韩精品免费| 另类欧美日韩国产在线| 国产欧美日韩专区发布| 一区二区三区在线免费视频| 亚洲欧洲日韩女同| 日韩一区二区精品视频| 精品99视频| 99国产精品久久| 欧美一二三视频| 国产一区视频在线观看免费| 久久黄色小说| 一本色道久久综合狠狠躁的推荐| 亚洲综合视频一区| 亚洲国产精品一区二区尤物区| 欧美精品一区二区三区蜜桃| 欧美亚洲免费在线| 欧美α欧美αv大片| 久久夜色精品国产| 国产精品二区二区三区| 免费不卡视频| 亚洲黄色天堂| 久久九九有精品国产23| 亚洲私拍自拍| 狠狠色狠狠色综合日日91app| 欧美成人第一页| 亚洲午夜久久久久久久久电影网| 亚洲一区二区三区在线| 韩国一区二区在线观看| 欧美日韩国产电影| 欧美成人精品一区| 亚洲一区二区日本| 一本色道久久综合亚洲精品婷婷 | 亚洲国产精品久久久久婷婷884| 亚洲欧美变态国产另类| 伊人成人在线| 国产一区二区久久久| 欧美伦理在线观看| 亚洲国产日韩欧美在线99| 久久久久久久97| 欧美国产视频日韩| 欧美激情bt| 老司机精品视频网站| 性欧美在线看片a免费观看| 亚洲视频久久| 亚洲精品一区二区三区福利| 亚洲国产经典视频| 国产亚洲欧洲一区高清在线观看| 国产精品久久福利| 欧美精品色网| 亚洲一区影音先锋| 亚洲在线观看视频网站| 蜜桃视频一区| 欧美国产91| 午夜精品久久久久久久| 欧美一级视频一区二区| 欧美一区二区三区视频免费播放| 一区二区电影免费观看| 亚洲网站在线看| 日韩午夜在线| 亚洲一级电影| 亚洲在线观看视频网站| 久久国产精品毛片| 欧美一区永久视频免费观看| 久久久久久**毛片大全| 久久久久久亚洲综合影院红桃 | 亚洲午夜在线观看视频在线| 亚洲人成毛片在线播放| 99精品国产在热久久下载| 亚洲福利免费| 在线视频欧美一区| 亚洲视频播放|