#include #include #include "ListVet.h" void Listinit( List * L ) { L->size = 0; L->elem = NULL; } /* Inserção */ void Listinsert( List * L, int data ) { int tam = L->size; int * novos = malloc( ( tam + 1 ) * sizeof ( int ) ); for(int i = 0; i < tam; i++) novos[i] = L->elem[i]; novos[L->size] = data; free( L->elem ); L->elem = novos; L->size++; } /* Remoção do primeiro elemento */ int Listremove( List * L ) { if ( L->size == 0 ) return -1; int tam = L->size; int * novos = malloc( ( tam - 1 ) * sizeof ( int ) ); for(int i = 1; i < tam; i++) novos[i-1] = L->elem[i]; int res = L->elem[0]; free( L->elem ); L->elem = novos; L->size--; return res; } /* Impressão */ void Listprint( List L ) { for(int i = 0; i < L.size; i++) printf( "%d ", L.elem[i] ); printf( "\n" ); }