brena-cmd / projeto01_ED

Matrizes esparsas

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

projeto01_ED

Matrizes esparsas


Code by:

Brena Rodrigues (@brena-cmd)
Hugo Patrício (@HugoPDF5)

Descrição

Implementar uma matriz esparsa usando listas circulares duplamente encadeadas

Funções

-[]List(): Construtor da classe. Deve iniciar todos os atributos da classe com valores validos.
-[]∼List(): Destrutor da classe. Libera mem´oria previamente alocada.
-[]void push back(int key): Insere um inteiro key ao final da lista.
-[]int pop back(): Remove elemento do final da lista e retorna seu valor.
-[]void insertAfter(int key, int k): Insere um novo n´o com valor key ap´os o k-´esimo n´o da lista.
-[]void remove(int key): Remove da lista a primeira ocorrˆencia do inteiro key
-[]void removeAll(int key): Remove da lista todas as ocorrˆencias do inteiro key.
-[]void print(): Imprime os elementos da lista.
-[]void printReverse(): Imprime os elementos da lista em ordem reversa.
-[]bool empty(): Retorna true se a lista estiver vazia e false caso contr´ario.
-[]int size(): Retorna o n´umero de n´os da lista.
-[]void clear(): Remove todos os elementos da lista e deixa apenas o n´o cabeca.
-[]void concat(List *lst): Concatena a lista atual com a lista lst passada por parˆametro. Ap´os essa opera¸c˜ao ser executada, lst ser´a uma lista vazia, ou seja, o ´unico n´o de lst ser´a o n´o cabe¸ca.
-[]List *copy(): Retorna um ponteiro para uma c´opia desta lista.
-[]void copyArray(int n, int arr[]): Copia os elementos do array arr para a lista. O array arr tem n elementos. Todos os elementos anteriores da lista s˜ao mantidos e os elementos do array arr devem ser adicionados ap´os os elementos originais.
-[]bool equal(List *lst): Determina se a lista passada por parˆametro ´e igual a lista em quest˜ao. Duas listas s˜ao iguais se elas possuem o mesmo tamanho e o valor do k-´esimo elemento da primeira lista ´e igual ao k-´esimo elemento da segunda lista.

Linguagem utilizada

C++

About

Matrizes esparsas


Languages

Language:C++ 100.0%