EstruturaDeDados
Carregando...
Procurando...
Nenhuma entrada encontrada
Referência à classe Template DoublyLinkedList< T >

Representa uma lista duplamente encadeada de elementos do tipo genérico T. Mais...

#include <doubly_linked_list.hpp>

Componentes

class  Iterator
 Iterador da lista duplamente encadeada. Mais...
 

Tipos Públicos

using iterator = DoublyLinkedList<T>::Iterator<Node>
 
using const_iterator = DoublyLinkedList<T>::Iterator<const Node>
 

Membros públicos

 DoublyLinkedList ()
 Construtor padrão da lista duplamente encadeada.
 
 DoublyLinkedList (const DoublyLinkedList &list)
 Construtor de cópia da lista duplamente encadeada.
 
DoublyLinkedListoperator= (const DoublyLinkedList &list)
 Operador de atribuição para copiar uma lista duplamente encadeada.
 
 ~DoublyLinkedList ()
 Destruidor da lista duplamente encadeada.
 
size_t size () const
 Obtém o tamanho da lista.
 
bool empty () const
 Verifica se a lista está vazia.
 
const_iterator begin () const
 Retorna um iterador para o início da lista (apontando para o primeiro nó).
 
const_iterator end () const
 Retorna um iterador para o final da lista (apontando para após o último nó).
 
iterator begin ()
 Retorna um iterador para o início da lista (apontando para o primeiro nó).
 
iterator end ()
 Retorna um iterador para o final da lista (apontando para após o último nó).
 
void push_front (const T &value)
 Adiciona um elemento ao início da lista.
 
void push_back (const T &value)
 Adiciona um elemento ao final da lista.
 
void insert (iterator pos, const T &value)
 Insere um elemento em uma posição específica da lista.
 
void pop_front ()
 Remove o primeiro elemento da lista.
 
void pop_back ()
 Remove o último elemento da lista.
 
void erase (iterator first, iterator last)
 Remove uma faixa de elementos da lista, definida pelos iteradores.
 
void clear ()
 Remove todos os elementos da lista.
 
const_iterator find (const T &item) const
 Encontra um item na lista e retorna um iterador para ele.
 
iterator find (const T &item)
 Encontra um item na lista e retorna um iterador para ele.
 
bool contains (const T &item) const
 Verifica se um item existe na lista.
 
T & operator[] (size_t index)
 Acessa um elemento por seu índice.
 
const T & operator[] (size_t index) const
 Acessa um elemento por seu índice.
 
void print () const
 Imprime os elementos da lista.
 

Descrição detalhada

template<class T>
class DoublyLinkedList< T >

Representa uma lista duplamente encadeada de elementos do tipo genérico T.

Esta classe implementa uma lista duplamente encadeada genérica, com métodos para manipulação de elementos, incluindo inserção, remoção, busca e iteração sobre os elementos da lista.

Documentação das definições de tipo

◆ const_iterator

template<class T >
using DoublyLinkedList< T >::const_iterator = DoublyLinkedList<T>::Iterator<const Node>

◆ iterator

template<class T >
using DoublyLinkedList< T >::iterator = DoublyLinkedList<T>::Iterator<Node>

Documentação dos Construtores & Destrutor

◆ DoublyLinkedList() [1/2]

template<class T >
DoublyLinkedList< T >::DoublyLinkedList ( )

Construtor padrão da lista duplamente encadeada.

◆ DoublyLinkedList() [2/2]

template<class T >
DoublyLinkedList< T >::DoublyLinkedList ( const DoublyLinkedList< T > & list)

Construtor de cópia da lista duplamente encadeada.

Parâmetros
listLista a ser copiada.

◆ ~DoublyLinkedList()

template<class T >
DoublyLinkedList< T >::~DoublyLinkedList ( )

Destruidor da lista duplamente encadeada.

Desaloca todos os nós da lista.

Documentação das funções

◆ begin() [1/2]

template<class T >
iterator DoublyLinkedList< T >::begin ( )

Retorna um iterador para o início da lista (apontando para o primeiro nó).

Retorna
Iterador para o início da lista.

◆ begin() [2/2]

template<class T >
const_iterator DoublyLinkedList< T >::begin ( ) const

Retorna um iterador para o início da lista (apontando para o primeiro nó).

Retorna
Iterador para o início da lista.

◆ clear()

template<class T >
void DoublyLinkedList< T >::clear ( )

Remove todos os elementos da lista.

◆ contains()

template<class T >
bool DoublyLinkedList< T >::contains ( const T & item) const

Verifica se um item existe na lista.

Parâmetros
itemValor a ser verificado.
Retorna
Verdadeiro se o item estiver presente na lista, falso caso contrário.

◆ empty()

template<class T >
bool DoublyLinkedList< T >::empty ( ) const

Verifica se a lista está vazia.

Retorna
Verdadeiro se a lista estiver vazia, falso caso contrário.

◆ end() [1/2]

template<class T >
iterator DoublyLinkedList< T >::end ( )

Retorna um iterador para o final da lista (apontando para após o último nó).

Retorna
Iterador para o final da lista.

◆ end() [2/2]

template<class T >
const_iterator DoublyLinkedList< T >::end ( ) const

Retorna um iterador para o final da lista (apontando para após o último nó).

Retorna
Iterador para o final da lista.

◆ erase()

template<class T >
void DoublyLinkedList< T >::erase ( iterator first,
iterator last )

Remove uma faixa de elementos da lista, definida pelos iteradores.

Parâmetros
firstIterador apontando para o primeiro elemento a ser removido.
lastIterador apontando após o último elemento a ser removido.

◆ find() [1/2]

template<class T >
iterator DoublyLinkedList< T >::find ( const T & item)

Encontra um item na lista e retorna um iterador para ele.

Parâmetros
itemValor a ser procurado.
Retorna
Iterador apontando para o item encontrado, ou end() caso o item não seja encontrado.

◆ find() [2/2]

template<class T >
const_iterator DoublyLinkedList< T >::find ( const T & item) const

Encontra um item na lista e retorna um iterador para ele.

Parâmetros
itemValor a ser procurado.
Retorna
Iterador apontando para o item encontrado, ou end() caso o item não seja encontrado.

◆ insert()

template<class T >
void DoublyLinkedList< T >::insert ( iterator pos,
const T & value )

Insere um elemento em uma posição específica da lista.

Parâmetros
posIterador apontando para a posição de inserção.
valueValor a ser inserido.

◆ operator=()

template<class T >
DoublyLinkedList & DoublyLinkedList< T >::operator= ( const DoublyLinkedList< T > & list)

Operador de atribuição para copiar uma lista duplamente encadeada.

Parâmetros
listLista a ser atribuída.
Retorna
Referência para a lista atual.

◆ operator[]() [1/2]

template<class T >
T & DoublyLinkedList< T >::operator[] ( size_t index)

Acessa um elemento por seu índice.

Parâmetros
indexÍndice do elemento.
Retorna
Referência ao valor no índice fornecido.
Excepções
std::out_of_rangeSe o índice for inválido.

◆ operator[]() [2/2]

template<class T >
const T & DoublyLinkedList< T >::operator[] ( size_t index) const

Acessa um elemento por seu índice.

Parâmetros
indexÍndice do elemento.
Retorna
Referência constante ao valor no índice fornecido.
Excepções
std::out_of_rangeSe o índice for inválido.

◆ pop_back()

template<class T >
void DoublyLinkedList< T >::pop_back ( )

Remove o último elemento da lista.

Excepções
std::out_of_rangeSe a lista estiver vazia.

◆ pop_front()

template<class T >
void DoublyLinkedList< T >::pop_front ( )

Remove o primeiro elemento da lista.

Excepções
std::out_of_rangeSe a lista estiver vazia.

◆ print()

template<class T >
void DoublyLinkedList< T >::print ( ) const

Imprime os elementos da lista.

◆ push_back()

template<class T >
void DoublyLinkedList< T >::push_back ( const T & value)

Adiciona um elemento ao final da lista.

Parâmetros
valueValor a ser adicionado.

◆ push_front()

template<class T >
void DoublyLinkedList< T >::push_front ( const T & value)

Adiciona um elemento ao início da lista.

Parâmetros
valueValor a ser adicionado.

◆ size()

template<class T >
size_t DoublyLinkedList< T >::size ( ) const

Obtém o tamanho da lista.

Retorna
Número de elementos na lista.

A documentação para esta classe foi gerada a partir do seguinte ficheiro: