[C++]STL-リスト(List)
リストとは?
シーケンスコンテナ(sequence container)は、順序を保持する構造である.
ノードベースコンテナ
二重接続リスト(二重リンクリスト)
vectorおよびdequeとは異なり、メンバー関数は
정렬(sort, merge)
および이어붙이기(splice)
である.元素探索の際には、
임의접근 반복자
(at()
、[]
)を用いることは不可能であり、양방향 반복자
(++
、--
)を用いて探索を行う.メンバー関数を使用してlistの両端に挿入または削除できます.
メンバー関数を使用すると、ノード間での挿入または削除が可能になります.
2.宣言
#include <list>
list<[Data Type] > [변수 이름];
list<int> lt1;
list<string> lt2;
3.リストメンバー関数
front
一番前の要素を返します.
li.front()
back
一番後ろの要素を返します.
li.back()
begin
一番前の要素を指す反復器を返します.
li.begin()
end
最後の要素を指す反復器を返します
li.end()
rbegin
後から順にアクセスする場合に使用
ひっくり返したときの最初の.
li.rbegin()
rend
後から順にアクセスする場合に使用
ひっくり返した時最後.
li.rend()
push_back
末尾で要素を挿入
li.push_back(k)
push_front
エレメントをヘッダーで挿入
li.push_front(k)
pop_back
最後の要素を削除
li.pop_back()
pop_front
一番前の要素を削除
li.pop_front()
insert
iter
が指す位置に要素を挿入挿入要素を指す反復器を返します
挿入後、残りの部分を後ろにプッシュ(左側に挿入)
li.insert(iter,k)
erase
iter
が指す要素を削除削除した要素の次の要素を指す反復器を返します.
li.erase(iter)
size
戻り要素数
li.size()
remove
kなどのすべての要素を削除
li.remove(k)
remove_if
単項条件者
predicate
すべての要素を削除li.remove_if(predicate)
reverse
要素のシーケンスを反転
li.reverse()
sort
昇順(default)ですべての要素をソート
パラメータによるソートとパラメータによるソート
(linked list
setSortRule
と同じ)li.sort()
swap
li1
およびli2
li2.swap(li1)
splice
li2
からiter2
で指す場所li1
の要素をすべて切り取ります.li2.splice(iter2,li1)
li2.splice(iter2,li1,iter1)
unique
隣接する要素が同じ場合は、タッチのみ(繰り返し削除)
li.unique()
merge
li1
をli2
の内部に統合昇順
2番目のパラメータでソート基準を取得できます
li2.merge(li1)
💡 注意:配置
C++ STL - linked list
[C++]listコンテナのクリーンアップと使用方法
Reference
この問題について([C++]STL-リスト(List)), 我々は、より多くの情報をここで見つけました https://velog.io/@youhyeoneee/C-STL-리스트listテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol