鏈表
優點:
* 可動態創建,內部自己維護。
* 可在鏈表中間添加元素。
* 插入、刪除方便,不會導致元素的移動。
* 在鏈表中間插入元素十分快速,不需要移動其它元素。
缺點:
* 不支持隨機訪問,訪問鏈表元素需要指針從鏈表的某個端點開始。
* 訪問數組元素的效率低。如,訪問第100個元素,必須從頭節一直next 99次才能訪問到。
示例
#include <iostream>
#include <list>
using namespace std;
int main()
{
char cTemp;
list<char> charList;
for(int i=0; i<5; i++)
{
cTemp = 'a' + i;
charList.push_front(cTemp);
}
cout << "list old:" << endl;
list<char> ::iterator it;
for(it = charList.begin(); it!= charList.end(); it++)
{
cout << *it << endl; //輸出鏈表元素
}
list<char> ::iterator itstart = charList.begin();
charList.insert(++itstart, 2, 'A'); //插入值
cout << "list old" << endl;
for(it = charList.begin(); it!=charList.end(); it++)
{
cout << *it << endl; //輸出鏈表元素
}
return 0;
}
程序運行結果:
如有需要補充的,歡迎大家留言討論。