ESTRUTURA DE DADOS - LISTA CONCATENADA
Por: rodolfoacr • 5/11/2015 • Trabalho acadêmico • 730 Palavras (3 Páginas) • 363 Visualizações
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int info;
struct Lista *prox;
}Lista;
Lista *inicializa(){
return NULL;
}
Lista *insere(Lista *l,int n){
Lista *novo=(Lista *)malloc(sizeof(Lista));
novo->info=n;
if(l==NULL){
novo->prox=l;
l=novo;
return l;
}else{
Lista *an, *at=l;
while(at!=NULL && at->info<n){
an=at;
at=at->prox;
}
if(at==l){
novo->prox=l;
l=novo;
}else{
novo->prox=an->prox;
an->prox=novo;
}
return l;
}
}
Lista *junta(Lista *l,Lista *l2, Lista *l3){
l3=l;
Lista *at;
Lista *an;
at=l3;
while(at!=NULL){
an=at;
at=at->prox;
}
an->prox=l2;
return l3;
}
void imprime(Lista *l){
Lista *p;
for(p=l;p!=NULL;p=p->prox){
printf("[%i]",p->info);
}
}
void libere(Lista *l){
if(l!=NULL){
Lista *pp;
while(l!=NULL){
pp=l;
l=l->prox;
free(pp);
}
free(l);
}
}
int main()
{
Lista *l;
Lista *l2;
Lista *l3;
int i=0,op=10,x=0,bv=0;
l=inicializa();
l2=inicializa();
l3=inicializa();
...