2007 2 Uern Santa Cruz Ed
Professor: Aquiles Burlamaqui
email: moc.liamg|iuqamalrubseliuqa#moc.liamg|iuqamalrubseliuqa
Resultados das Avaliações
Links
- http://equipe.nce.ufrj.br/adriano/c/apostila/indice.htm
- http://www.ime.usp.br/~pf/algoritmos/idx.html
Table of Contents
|
Ementa
- Introdução.
- Listas lineares.
- Pilhas
- Filas.
- Árvores.
- Árvores balanceadas.
- Listas de prioridade.
- Tabelas de dispersão.
- Busca digital.
- Alocação Dinâmica.
Agenda
Data | Conteúdo | Trabalho |
---|---|---|
14/11/2007 | AULA 01(4) - Apresentação da Disciplina, Revisão Ponteiros | |
21/11/2007 | AULA 02(8) - Programação em C usado .h, Listas Lineares e Alocação Dinâmica | |
28/11/2007 | AULA 03(12) - Pilhas Estáticas e Dinâmicas | |
05/12/2007 | AULA 04(16) - Filas Estáticas e Dinâmicas | |
12/12/2007 | AULA 05(20) - Resolução dos Trabalhos | |
19/12/2007 | AULA 06(24) - Revisão - I Prova | |
23/01/2008 | AULA 07(28) - Entrega de Notas -Introdução a Árvores | |
30/01/2008 | AULA 08(32) - Árvores Binárias | |
06/02/2008 | - Não houve Aula (Quarta-feira de Cinzas) | |
13/02/2008 | AULA 09(36) - Árvores Binárias de Busca, Inserção | |
20/02/2008 | - Não houve Aula (Motivo: Defesa da Tese) | |
27/02/2008 | AULA 10(40) - Busca, Máximo, Mínimo, Sucessor, Remoção | |
05/03/2008 | AULA 11(44) - II Prova | |
12/03/2008 | AULA 12(48) - Balanceamento de Árvores | |
19/03/2008 | AULA 13(52) - Tabelas Hash | |
26/03/2008 | AULA 14(56) - Complexidade De Algoritmos | |
02/04/2008 | AULA 15(60) - Revisão / III Prova | |
09/04/2008 | AULA 16(64) - IV Prova |
12/12/2007 - Filas
fila.h
typedef struct elemento { int valor; struct elemento * proximo; } elemento; typedef struct fila { int tamanho; struct elemento * inicio; struct elemento * fim; } fila; void enqueue(int item, fila * f); elemento * dequeue(fila * f);
fila.c
#include <stdio.h> #include "fila.h" void enqueue(int item, fila* f) { if(f->inicio == NULL) { f->inicio = malloc(sizeof(elemento)); f->fim = f->inicio; f->inicio->valor = item; f->inicio->proximo = NULL; printf("Enfileirando:%i\n",f->inicio->valor); }else { f->fim->proximo = malloc(sizeof(elemento)); f->fim = f->fim->proximo; f->fim->valor = item; f->fim->proximo = NULL; printf("Desenfileirando:%i\n",f->fim->valor); } f->tamanho = f->tamanho+1; } elemento * dequeue(fila *f) { if(f->inicio==NULL) { printf("Fila Vazia!!!"); return NULL; }else { elemento * temp = f->inicio; f->inicio = f->inicio->proximo; printf("Desenfileirando: %i\n",temp->valor); return temp; } }
28/11/2007 - Pilhas
pilha.h
typedef struct elemento { int valor; struct elemento* proximo; }elemento; typedef struct pilha { int tamanho; elemento * topo; } pilha; void push(int item, pilha *p); elemento * pop(pilha * p);
pilha.c
#include "pilha.h" #include <stdio.h> void push(int item, pilha *p) { if(p->topo==NULL) { p->tamanho = 1; p->topo = malloc(sizeof(pilha)); p->topo->valor = item; p->topo->proximo = NULL; printf("Tava vazio, coloquei o primeiro: %i\n",item); }else { elemento * temp = p->topo; p->topo = malloc(sizeof(pilha)); p->topo->valor = item; p->topo->proximo = temp; printf("Empilhei mais um...:%i\n",item); } } elemento* pop(pilha *p) { if(p->topo==NULL) { printf("PILHA VAZIA!!!\n"); return NULL; }else { elemento * temp = p->topo; p->topo = p->topo->proximo; p->tamanho = p->tamanho - 1; printf("POP()!!! %i \n",temp->valor); return temp; } }
main.c
#include <stdio.h> #include "pilha.h" int main() { printf("Estrutura de Dados\n"); printf(" ## PILHA ##\n"); pilha p1; p1.tamanho = 0; p1.topo = NULL; push(10,&p1); push(15,&p1); push(20,&p1); pop(&p1); pop(&p1); pop(&p1); pop(&p1); }
page revision: 34, last edited: 02 Apr 2008 01:12