Jump to content


Photo

Lista Encadeada


  • Faça o login para participar
1 reply to this topic

#1 xaves

xaves

    Normal

  • Usuários
  • 105 posts
  • Sexo:Não informado
  • Interesses:Redes, Corel Draw e Programação em geral

Posted 25/11/2004, 19:47

Olá, to encomodando de novo, mas estou com problemas para criar uma lista encadeada no C, e dinâmica, se alguém tiver algum tutorial ou um exemplo pra mim me ligar como é..... :D
• Xaves Corel | Pré-impressão | Photoshop | Programação

#2 xg0rd0

xg0rd0

    Novato no fórum

  • Usuários
  • 21 posts
  • Sexo:Não informado

Posted 02/12/2004, 11:42

isso eh um sacowww !!! droga pq nos temos que aprender essas coisas vio !

mas ai vai !

#include <stdlib.h>

#define OK 1
#define ERRO 0
#define TRUE 1
#define FALSE 0

struct reglista{
	int info;
	struct reglista *prox;
};

typedef struct reglista *lista;

//Inicializar fila :
int criar (lista *l){
	*l = NULL;
	return OK;
}

//Verificar se a fila esta vazia :
int vazia(lista l){
	if(l == NULL){
  return TRUE;
	}
	else{
  return FALSE;
	}
}
// Retona ao tamamho da fila
int tamanho(lista l){
	int cont = 0;
	while(l != NULL){
  cont++;
  l = l->prox;
	}
	return cont;
}

// Retornar a um elemento de determinada posicao :
lista elementopos(lista l, int posicao){
	int i;
	if(tamanho(l) >= posicao && posicao > 0){
  for(i=1; i<posicao; i++){
 	 l = l->prox;
  }
  return(l);
	}
	else{
  return(NULL);
	}
}
// Inserir dados na lista em ordem de chegada :
int inserir (lista *l, int valor){
	lista nl;
	nl = (lista) malloc(sizeof(lista));
	nl->info = valor;
	*l = nl;
	return OK;
}

// Inserir dados na lista em uma determinada posicao :
int inserirpos(lista *l, int valor, int posicao){
	lista nl, ea;
	if(posicao == 1){
  nl = (lista) malloc(sizeof(lista));
  nl->info = valor;
  nl->prox = *l;
  *l = nl;
  return OK;
	}
	else{
	ea = elementopos(*l, posicao-1);
	if(ea != NULL){
  nl = (lista) malloc(sizeof(lista));
  nl->info = valor;
  nl->prox = ea->prox;
  ea->prox = nl;
  return OK;
	}
	else{
  return ERRO;
	}
}
}

Deveriam liberar imagens em php.




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq