- Листа је континуални контејнер док је вектор несуседни контејнер, тј. листа складишти елементе у суседној меморији, а вектор складишти у несуседној меморији.
- Убацивање и брисање у средини вектора је веома скупо јер је потребно много времена за померање свих елемената. Листа линкова превазилази овај проблем и имплементира се помоћу контејнера листе.
- Листа подржава двосмерни и пружа ефикасан начин за операције уметања и брисања.
- Прелазак је спор на листи јер се елементима листе приступа секвенцијално док вектор подржава насумични приступ.
Шаблон за листу
#include #include using namespace std; int main() { list l; } Креира празну листу вредности целобројног типа.
Листа се такође може иницијализирати параметрима.
#include #include using namespace std; int main() { list l{1,2,3,4}; } Листа се може иницијализовати на два начина.
list new_list{1,2,3,4}; or list new_list = {1,2,3,4}; Функције листе Ц++
Следе функције чланова листе:
| Метод | Опис |
|---|---|
| инсерт() | Умеће нови елемент пре позиције на коју указује итератор. |
| потисне() | Додаје нови елемент на крају вектора. |
| пусх_фронт() | Додаје нови елемент на предњу страну. |
| поп_бацк() | Брише последњи елемент. |
| поп_фронт() | Брише први елемент. |
| празно() | Проверава да ли је листа празна или не. |
| величина() | Проналази број елемената присутних на листи. |
| мак_сизе() | Проналази максималну величину листе. |
| фронт() | Враћа први елемент листе. |
| назад() | Враћа последњи елемент листе. |
| свап() | Замењује две листе када је тип обе листе исти. |
| реверсе() | Преокреће елементе листе. |
| врста() | Она сортира елементе листе у растућем редоследу. |
| споји() | Он спаја две сортиране листе. |
| спој () | Убацује нову листу у листу за позивање. |
| јединствен() | Уклања све дуплиране елементе са листе. |
| промените величину() | Он мења величину контејнера листе. |
| додели() | Додељује нови елемент контејнеру листе. |
| локација() | Умеће нови елемент на одређену позицију. |
| емплаце_бацк() | Умеће нови елемент на крај вектора. |
| емплаце_фронт() | Умеће нови елемент на почетак листе. |