Código de EDA - 28/03/2012
2 participantes
Página 1 de 1
Código de EDA - 28/03/2012
Professor Renato acabou de passar o código de hoje, vamos divulgar e estudar!
#include < stdio.h >
#include < stdlib.h >
typedef struct _Pilha Pilha;
struct _Pilha
{
int v[100];
int qt;
};
Pilha* criaPilha()
{
Pilha* resp = (Pilha*) malloc(sizeof(Pilha));
resp->qt = 0;
return resp;
}
void destroiPilha(Pilha *p)
{
free(p);
}
void push(Pilha *p, int i)
{
p->v[p->qt] = i;
p->qt++;
}
int pop(Pilha *p)
{
p->qt--;
return p->v[p->qt];
}
int main(int argc, char** argv)
{
Pilha *p = criaPilha();
push(p,1);
push(p,2);
push(p,3);
printf("%d\n",pop(p));
push(p,4);
printf("%d\n",pop(p));
printf("%d\n",pop(p));
printf("%d\n",pop(p));
destroiPilha(p);
getch();
return 0;
}
Lista Encadeada
André,
conseguiu fazer o código para criar a lista encadeada?
Pode me ajudar a implementar uma das listas abaixo?
Não recursiva:
celula *busca (int x, celula *ini)
{
celula *p;
p = ini->prox;
while (p != NULL && p->conteudo != x)
p = p->prox;
return p;
}
Versão recursiva da mesma função:
celula *busca2 (int x, celula *ini)
{
if (ini->prox == NULL)
return NULL;
if (ini->prox->conteudo == x)
return ini->prox;
return busca2 (x, ini->prox);
}
Pode acrescentar a main, por favor!
Grato,
Gilvan
conseguiu fazer o código para criar a lista encadeada?
Pode me ajudar a implementar uma das listas abaixo?
Não recursiva:
celula *busca (int x, celula *ini)
{
celula *p;
p = ini->prox;
while (p != NULL && p->conteudo != x)
p = p->prox;
return p;
}
Versão recursiva da mesma função:
celula *busca2 (int x, celula *ini)
{
if (ini->prox == NULL)
return NULL;
if (ini->prox->conteudo == x)
return ini->prox;
return busca2 (x, ini->prox);
}
Pode acrescentar a main, por favor!
Grato,
Gilvan
Gilvan Damasceno- Mensagens : 3
Data de inscrição : 12/06/2011
Idade : 54
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|