- Lista é um contêiner contíguo, enquanto vetor é um contêiner não contíguo, ou seja, a lista armazena os elementos em uma memória contígua e o vetor armazena em uma memória não contígua.
- A inserção e exclusão no meio do vetor é muito cara, pois leva muito tempo para deslocar todos os elementos. O Linklist supera esse problema e é implementado usando o contêiner de lista.
- List oferece suporte bidirecional e fornece uma maneira eficiente para operações de inserção e exclusão.
- A travessia é lenta na lista, pois os elementos da lista são acessados sequencialmente, enquanto o vetor suporta acesso aleatório.
Modelo para lista
#include #include using namespace std; int main() { list l; }
Ele cria uma lista vazia de valores de tipo inteiro.
A lista também pode ser inicializada com os parâmetros.
#include #include using namespace std; int main() { list l{1,2,3,4}; }
A lista pode ser inicializada de duas maneiras.
list new_list{1,2,3,4}; or list new_list = {1,2,3,4};
Funções de lista C++
A seguir estão as funções-membro da lista:
Método | Descrição |
---|---|
inserir() | Insere o novo elemento antes da posição apontada pelo iterador. |
retrocesso() | Adiciona um novo elemento no final do vetor. |
push_front() | Ele adiciona um novo elemento à frente. |
pop_back() | Ele exclui o último elemento. |
pop_front() | Ele exclui o primeiro elemento. |
vazio() | Verifica se a lista está vazia ou não. |
tamanho() | Encontra o número de elementos presentes na lista. |
tamanho máximo() | Encontra o tamanho máximo da lista. |
frente() | Ele retorna o primeiro elemento da lista. |
voltar() | Ele retorna o último elemento da lista. |
trocar() | Ele troca duas listas quando o tipo de ambas as listas é o mesmo. |
reverter() | Ele inverte os elementos da lista. |
organizar() | Ele classifica os elementos da lista em ordem crescente. |
mesclar() | Ele mescla as duas listas classificadas. |
emenda() | Ele insere uma nova lista na lista de chamada. |
exclusivo() | Remove todos os elementos duplicados da lista. |
redimensionar() | Altera o tamanho do contêiner da lista. |
atribuir() | Ele atribui um novo elemento ao contêiner da lista. |
localização() | Ele insere um novo elemento em uma posição especificada. |
emplace_back() | Insere um novo elemento no final do vetor. |
emplace_front() | Insere um novo elemento no início da lista. |