Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void inserir_elemento ( struct conjunto* c, int e ) // falta verificação se é igual
- {
- listinha* temp;
- listinha* cria;
- cria = (listinha*) MALLOC(sizeof(listinha));
- temp = c->lista; //lista recebe a lista do conjunto
- while (temp->proximo_elemento != NULL)
- {
- //printf("af\n");
- if(temp->proximo_elemento->elemento == e){ // verifica se já existe o elemento na lista
- FREE(cria); // libera a memória alocada, pois não será utilizada
- return; // quebra o while
- }
- if (temp->proximo_elemento->elemento > e) // Se o prox. elemento for maior que o a ser inserido ou for o último da lista
- {
- cria->proximo_elemento = temp->proximo_elemento;
- temp->proximo_elemento = cria;
- return; // quebra o while
- }
- temp = temp->proximo_elemento; // pula pro próximo
- }
- temp->proximo_elemento = cria; // se a lista foi percorrida inteira (ou for o primeiro) , adicionar o elemento no fim, com o prox apontado pra null
- cria->proximo_elemento=NULL;
- }
Add Comment
Please, Sign In to add comment