1. C++ Lists(連結清單)
Lists将元素按順序儲存在連結清單中. 與 向量(vectors)相比, 它允許快速的插入和删除,但是随機通路卻比較慢.
assign() | 給list指派 |
back() | 傳回最後一個元素 |
begin() | 傳回指向第一個元素的疊代器 |
clear() | 删除所有元素 |
empty() | 如果list是空的則傳回true |
end() | 傳回末尾的疊代器 |
erase() | 删除一個元素 |
front() | 傳回第一個元素 |
get_allocator() | 傳回list的配置器 |
insert() | 插入一個元素到list中 |
max_size() | 傳回list能容納的最大元素數量 |
merge() | 合并兩個list |
pop_back() | 删除最後一個元素 |
pop_front() | 删除第一個元素 |
push_back() | 在list的末尾添加一個元素 |
push_front() | 在list的頭部添加一個元素 |
rbegin() | 傳回指向第一個元素的逆向疊代器 |
remove() | 從list删除元素 |
remove_if() | 按指定條件删除元素 |
rend() | 指向list末尾的逆向疊代器 |
resize() | 改變list的大小 |
reverse() | 把list的元素倒轉 |
size() | 傳回list中的元素個數 |
sort() | 給list排序 |
splice() | 合并兩個list |
swap() | 交換兩個list |
unique() | 删除list中重複的元素 |
2. C++ Lists(連結清單)
指派(assign)
文法:
|
assign()函數以疊代器start和end訓示的範圍為list指派或者為list指派num個以val為值的元素。
相關主題:
insert(),
back
文法:
|
back()函數傳回一個引用,指向list的最後一個元素。
相關主題:
front(), pop_back(),
begin
文法:
|
begin()函數傳回一個疊代器,指向list的第一個元素。例如,
// 建立一個元素類型是字元的連結清單
list<char> charList;
for( int i=0; i < 10; i++ )
charList.push_front( i + 65 );
// 顯示這個連結清單
list<char>::iterator theIterator;
for( theIterator = charList.begin(); theIterator != charList.end(); theIterator++ )
cout << *theIterator;
相關主題:
end(),
clear
文法:
|
clear()函數删除list的所有元素。
empty
文法:
|
empty()函數傳回真(true)如果連結清單為空,否則傳回假。例如:
list<int> the_list;
for( int i = 0; i < 10; i++ )
the_list.push_back( i );
while( !the_list.empty() ) {
cout << the_list.front() << endl;
the_list.pop_front();
}
end
文法:
|
end()函數傳回一個疊代器,指向連結清單的末尾。
相關主題:
begin(),
erase
文法:
|
erase()函數删除以pos訓示位置的元素, 或者删除start和end之間的元素。 傳回值是一個疊代器,指向最後一個被删除元素的下一個元素。
front
文法:
|
front()函數傳回一個引用,指向連結清單的第一個元素。
list<int> the_list;
for( int i = 0; i < 10; i++ )
the_list.push_back( i );
while( !the_list.empty() ) {
cout << the_list.front() << endl;
the_list.pop_front();
}
相關主題:
back(),
get_allocator
文法:
|
get_allocator()函數傳回連結清單的配置器。
insert
文法:
|
insert()插入元素val到位置pos,或者插入num個元素val到pos之前,或者插入start到end之間的元素到pos的位置。傳回值是一個疊代器,指向被插入的元素。
max_size
文法:
|
max_size()函數傳回連結清單能夠儲存的元素數目。
merge
文法:
|
merge()函數把自己和lst連結清單連接配接在一起,産生一個整齊排列的組合連結清單。如果指定compfunction,則将指定函數作為比較的依據。
pop_back
文法:
|
pop_back()函數删除連結清單的最後一個元素。
相關主題:
pop_front(),
pop_front
文法:
|
pop_front()函數删除連結清單的第一個元素。
相關主題:
pop_back(),
push_back
文法:
|
push_back()将val連接配接到連結清單的最後。例如:
list<int> the_list;
for( int i = 0; i < 10; i++ )
the_list.push_back( i );
相關主題:
push_front(),
push_front
Syntax:
|
push_front()函數将val連接配接到連結清單的頭部。
相關主題:
push_back(),
rbegin
文法:
|
rbegin()函數傳回一個逆向疊代器,指向連結清單的末尾。
相關主題:
rend(),
remove
文法:
|
remove()函數删除連結清單中所有值為val的元素。例如
// 建立一個連結清單,元素是字母表的前10個元素
list<char> charList;
for( int i=0; i < 10; i++ )
charList.push_front( i + 65 );
// 删除所有'E'的執行個體
charList.remove( 'E' );
remove_if
文法:
|
remove_if()以一進制謂詞pr為判斷元素的依據,周遊整個連結清單。如果pr傳回true則删除該元素。
rend
文法:
|
rend()函數疊代器指向連結清單的頭部。
resize
文法:
|
resize()函數把list的大小改變到num。被加入的多餘的元素都被指派為val
reverse
文法:
|
reverse()函數把list所有元素倒轉。
size
文法:
|
size()函數傳回list中元素的數量。
排序(sort)
文法:
|
sort()函數為連結清單排序,預設是升序。如果指定compfunction的話,就采用指定函數來判定兩個元素的大小。
splice
文法:
|
splice()函數把lst連接配接到pos的位置。如果指定其他參數,則插入lst中del所指元素到現連結清單的pos上,或者用start和end指定範圍。
swap
文法:
|
swap()函數交換lst和現連結清單中的元素。
unique
|