2008 2 Uern Novacruz Ed
Professor: Aquiles Burlamaqui
email: moc.liamg|iuqamalrubseliuqa#moc.liamg|iuqamalrubseliuqa
Links
- http://equipe.nce.ufrj.br/adriano/c/apostila/indice.htm
- http://www.ime.usp.br/~pf/algoritmos/idx.html
- http://webpages.ull.es/users/jriera/Docencia/AVL/AVL%20tree%20applet.htm
Notas
Ementa
- Introdução.
- Alocação Dinâmica.
- Pilhas
- Filas.
- Árvores.
- Árvores balanceadas.
- Tabelas de dispersão.
- Busca.
- Complexidade
Agenda
Data | Conteúdo | Trabalho |
---|---|---|
29/10/2008 | AULA 01(4) - Apresentação da Disciplina, Motivação, Dinâmica de Grupo 00-ApresentacaoDaDisciplina.pdf | |
04/11/2008 | AULA 02(8) - Revisão Estrutura, Ponteiros, Passagem de Parâmetros por Referência 01-Ponteiros.ppt | |
12/11/2008 | AULA 03(12) - Implementação Pilha estática e Pilha dinâmica | |
19/11/2008 | AULA 04(16) - Pilha Dinâmica | T1 |
26/11/2008 | Não Haverá Aula | |
03/12/2008 | Feriado Municipal | |
10/12/2008 | AULA 05(20) - Fila Estática e Dinâmica | T2 |
17/12/2008 | AULA 06(24) - Revisão, Entrega dos Trabalhos e I Avaliação Escrita | E1 |
Fila
#include <stdio.h> #include <stdlib.h> typedef struct element { int value; struct element *next; }element; typedef struct queue{ int size; struct element *head; struct element *tail; }queue; void enqueue(queue *s, int i) { if(s->size==0){ s->head = malloc(sizeof(element)); s->tail = s->head; s->head->value = i; s->head->next = NULL; s->size++; }else{ element *temp; temp = s->tail; s->tail = malloc(sizeof(element)); s->tail->next = NULL; s->tail->value = i; temp->next = s->tail; s->size++; } } int dequeue(queue *q) { if(q->size==0) { printf("The queue is empty\n"); return -1; }else{ int x = q->head->value; free(q->head); q->size--; q->head = q->head->next; return x; } } int main() { queue f; f.size=0; f.head=NULL; f.tail=NULL; enqueue(&f,5); enqueue(&f,10); enqueue(&f,3); enqueue(&f,7); printf("%i\n",dequeue(&f)); }
page revision: 28, last edited: 02 Mar 2009 14:22
Post preview:
Close preview