relatorio de programaçao
Disciplina: Laboratório de Algoritmos e Estruturas de Dados
Professor: Anísio
Introdução: Listas,filas e pilhas são um assunto muito importante no estudo da programação, uma vez que nos permitem gerenciar extensos bancos de dados, e grande numero de pessoas ou usuarios de um determinado sistema. O entendimento desses assuntos requer um grande comprometimento por parte do aluno para com o mesmo, tendo em vista que é um assunto dificil de se trabalhar e programar, além de que será um tópico muito importante no ambiente de mercado de trabalho.
Exercício 1: No exercicio 1, foi proposto a criação de 13 funções, que servem para gerenciar uma lista de numeros inteiros, serão apresentadas e explicadas uma a uma em seguida,complementadas com desenhos demonstrativos(feitos a mão) do que aconteceu depois da aplicação da função na lista.
Função 1:(conjunto de dados, inteiros da lista) typedef struct node_i
{
int valor; struct node_i *prox;
}node;
Essa função define como parâmetros da lista os inteiros.
Função 2:(Inicializa uma lista) node* inicializa(node* lista)
{
lista = NULL; return lista;
}
Essa função inicializa lista adotando-a como não vazia.
Função 3:(Vazia lista) int vazia(node* lista)
{
return lista == NULL ? 1 : 0;
}
Essa função retorna 1 caso a lista seja vazia.
Função 4:(Imprime lista) void imprime(node* lista)
{
node * item = lista;
while(item != NULL) { printf("%d ", item->valor); item = item->prox; }
printf("\n");
}
Essa função recebe uma lista como parâmetro e a imprime.
Função 5:(Insere fim) void insereFim(int valor, node **lista)
{
node *item = *lista;
if(item == NULL) { // Caso a lista seja vazia o novo item é a própria lista item = malloc(sizeof(node)); item->valor = valor; item->prox = NULL; *lista = item; } else { // Encontra o último item da lista