Estruturas de Dados Filas

Tamanho: px
Começar a partir da página:

Download "Estruturas de Dados Filas"

Transcrição

1 Estruturas de Dados Filas

2 Roteiro Introdução Definição de Fila (Queue) Aplicações Operações sobre Fila Implementação de Fila Com vetores Com listas encadeadas Exercícios

3 Introdução Estamos acostumados com filas no nosso dia a dia, no mercado, banco entre outros. As filas determinam uma ordem de atendimento. Atendimento é realizado conforme posição na fila. Quando o primeiro é chamado para ser atendido a fila "anda", ou seja, o segundo passa a ser o primeiro, o terceiro passa a ser o segundo e assim por diante. Normalmente, para entrar em uma fila, a pessoa deve se colocar na última posição (no fim da fila) - quem chega primeiro tem prioridade. 3

4 Introdução Nessa aula vamos ver como desenvolver estruturas de dados do tipo Fila. As filas têm operações mais restritas do que listas. Então, podemos implementar uma fila colocando restrições nas operações de lista. Quais seriam estas restrições?? 4

5 Definição de Fila (Queue) São estruturas de dados do tipo FIFO (First-in first-out): o primeiro elemento a ser inserido, será o primeiro elemento a ser retirado. A inserção dos elementos é dada por uma das extremidades da fila e a remoção por outra, ou seja, adiciona-se elementos no final e retira do início. 5

6 Representação de Fila (FIFO) 6

7 Aplicações Fila de arquivos para impressão; Atendimento de processos requisitados ao um sistema operacional; Buffer para gravação de dados em mídia; Processos de comunicação em redes de computadores (troca de mensagens).. Ordenação do encaminhamento de pacotes em um roteador. Controle de pousos e partidas de aeronaves. 7

8 Operações sobre Fila Todas as operações em uma fila podem ser imaginadas como as que ocorre numa fila de pessoas, exceto que o elementos não se movem na fila. Isto teria um processamento muito custoso. O que se faz na realidade é indicar quem é o primeiro. Criação da fila informar a capacidade no caso de fila por contiguidade (usando vetor); Verificar se a fila está cheia (no caso de fila por contiguidade - vetor) Enfileiramento (enqueue) consiste em inserir um valor no fim da fila. É preciso verificar previamente se a fila está cheia. Verificar se a fila está vazia Desenfileiramento (dequeue) consiste em retirar um valor do início da fila. É preciso verificarpreviamente se a fila está vazia. Mostrar a fila 8

9 Implementação de Fila A implementação de filas pode ser realizada através de: vetor (alocação do espaço de memória para os elementos é contígua); listas encadeadas. 9

10 Implementação de Fila com vetor Para isso devemos fixar o número máximo N de elementos na fila. O processo de inserção e remoção em extremidades opostas fará com que a fila "ande" no vetor. Exemplo: se inserirmos os elementos 10, 20, 30 e depois retirarmos um elemento, a fila não estará mais nas posições iniciais do vetor. 10

11 Implementação de Fila com vetor 11

12 Implementação de Fila com vetor Observamos que em dado instante, a parte ocupada do vetor pode chegar à última posição. Para evitar problemas de não ser capaz de inserir mais elementos na fila, mesmo ela não estando cheia, pode-se incrementar as posições do vetor de forma "circular": se o último elemento ocupa a última posição do vetor, inserimos os novos elementos a partir do início do vetor. Na implementação este ajuste acontece da seguinte forma: ultimo = (primeiro + qt) %tamanho 12

13 Estrutura Fila A estrutura do tipo Fila contém três componentes: Um vetor vet de tamanho N Um índice ini para o início da fila Um índice n para indicar a quantidade de elementos que estão na fila. Onde, ini marca a posição do próximo elemento a ser retirado da fila; 13

14 Estrutura Fila A estrutura da Fila pode ser dada por: #define N 10 typedef struct{ int ini, n; int vet[n]; } Fila; 14

15 A função de criação da Fila Aloca dinamicamente um vetor Inicializa a fila como sendo vazia (número de elementos =0) Fila * cria (void){ Fila *f = (Fila*) malloc (sizeof(fila)); f->n = 0; /*inicializa fila como vazia*/ f->ini = 0; /*escolhe uma posição inicial*/ return f; } 15

16 A função de inserção na Fila Insere um elemento no final da fila Usa a próxima posição livre do vetor, se houver void insere(fila *f, int v){ int fim; /*indica posição que será inserido*/ if (f->n!= N){ /*insere elemento na posição livre*/ fim = (f->ini + f->n)%n; f->vet[fim] = v; f->n++; }else{ printf("fila Cheia!"); exit (1); } } 16

17 A função de remoção da Fila Retira o elemento do início da fila, retornando o seu valor Verifica se a fila está ou não vazia int retira (Fila *f){ int v; if(f->n!= 0){/*fila não está vazia*/ v = f->vet[f->ini]; f->n--; f->ini = (f->ini + 1)%N; return v; }else{ printf("fila Vazia!"); exit(1); } 17

18 A função de impressão da Fila void imprime (Fila *f){ int i; for(i=0; i<f->n; i++){ printf("%d", f->vet[f->ini + i]%n); } } 18

19 Implementação de Fila com vetor - Exemplo main(){ Fila *f = cria(); insere (f, 10); insere (f, 20); insere (f, 30); imprime (f); printf("primeiro elemento: %d\n", retira(f)); printf("segundo elemento: %d\n", retira(f)); imprime(f); } 19

20 Implementação de Fila com lista simplesmente encadeada Os elementos da Fila são armazenados em uma lista. Utiliza dois ponteiros ini aponta para o primeiro elemento da fila fim aponta para o último elemento da fila 20

21 A estrutura da Fila A fila é representada por um ponteiro para o primeiro nó da lista. /*nó da lista para armazear valores reais*/ struct lista{ int info; struct lista *prox; }; typedef struct lista Lista; /*estrutura da fila*/ struct fila{ Lista *ini; Lista *fim; }; typedef struct fila Fila; 21

22 A função de criação da Fila Aloca a estrutura da fila Fila *f cria(){ Fila *f = (Fila*) malloc(sizeof(fila)); f->ini = f->fim = NULL; return f; } 22

23 A função de inserção na Fila Insere novo elemento no final da lista void insere (Fila *f, int v){ Lista *novo = (Lista*)malloc(sizeof(Lista)); novo->info = v; novo->prox = NULL; if(f->fim ==NULL && f->ini == NULL){ f->ini = novo; f->fim = novo; }else{ f->fim->prox = novo; f->fim=novo; } 23

24 A função de remoção da Fila Retira um elemento do início da lista. int retira(fila *f){ Lista *t; int v; if(f->fim == NULL && f->ini == NULL){ printf("fila vazia!"); exit(1); } t = f->ini; v = t->info; f->ini = t->prox; if(f->ini == NULL) f->fim = NULL; free(t); return v; } 24

25 A função de liberação da Fila Caso esteja sendo realizada a implementação com vetores, deve ser liberado o vetor ao final do programa. Caso esteja utilizando a implementação com listas encadeadas, a lista deve ser liberada ao final do programa. 25

26 Exercícios Questão 1: Considere a estrutura de dados fila, do tipo FIFO. Entidades são inseridas nessa estrutura com a operação push( ) e removidas com a operação pop( ). A opção a seguir que mostra o conteúdo ordenado da fila após a seqüência de operações: push(8), push(7), push(5), push(2), pop( ), push(8),push(7),pop( ), push(5), push(2), pop( ), pop( ) é: (A) 8578 (B) 8758 (C) 8752 (D) 2875 (E)

27 Exercícios Questão 2: FCC MPE-RN - Analista de Tecnologia da Informação -Engenharia de Software Último dado armazenado é o primeiro a ser recuperado caracteriza a estrutura de dados do tipo: a) árvore. b) pilha. c) string. d) fila. e) boolean. 27

28 Exercícios Questão 3: FCC MPE-RS - Técnico em Informática - Área Sistemas Respeitando as ordens de inserção e de retirada dos dados, uma estrutura de: a) fila é também denominada LIFO ou LILO. b) fila é também denominada FIFO ou FILO. c) fila é também denominada FIFO ou LILO. d) pilha é também denominada FIFO ou FILO. e) pilha é também denominada LIFO ou FIFO. 28

29 Exercícios Questão 4: FCC MPE-RS - Técnico em Informática - Área Sistemas As estruturas do tipo LIFO (Last-In-First-Out) e FIFO (First-In-FirstOut) são classificadas, respectivamente, como: A) pilha e fila; B) grafo e lista; C) lista e pilha; D) pilha e grafo. E) fila e pilha; 29

30 Exercícios Questão 5: BNDS 2002 Analista de Sistemas (Desenvolvimento) Considere os processos de inserção e remoção de elementos de uma determinada estrutura de dados. Dois tipos especiais de estruturas de dados que, sob o ponto de vista da inserção e remoção de elementos,são classificadas como estruturas do tipo LIFO Last- In-First-Out efifo First-In-First-Out são, respectivamente, (A) B-Tree e lista. (B) pilha e fila. (C) lista e pilha. (D) grafo e B-Tree. (E) fila e grafo. 30

31 Exercícios Questão 6: TRE/MG Analista de Sistemas 2005 É uma lista linear em que todas as inserções de novos elementos são realizadas numa extremidade da lista e todas as remoções de elementos são feitas na outra extremidade da lista. Esta definição a) pilha que é uma estrutura de dados do tipo FILO (First In Last Out). b) fila que é uma estrutura de dados do tipo FIFO (First In First Out). c) fila circular que é uma estrutura de dados do tipo FILO (First In LastOut). d) pilha ordenada que é uma estrutura de dados do tipo FIGO (First InGoback Out). e) fila que é uma estrutura de dados do tipo LIFO (Last In First Out). 31

32 Exercícios Questão 7: As filas são estruturas com base no princípio LIFO (last in, first out), no qual os dados que foram inseridos primeiro na fila serão os últimos a serem removidos. Existem duas funções que se aplicam a todas as filas: PUSH, que insere um dado no topo da fila, e POP, que remove o item no topo da fila. Certo ou Errado? 32

33 Exercícios Questão 8: Insira os dados de entrada numa fila. Em seguida retire cada dado da fila e insira numa pilha. Mostre a pilha. Depois retire os dados da pilha e insira na fila. Mostre a fila. Dados de entrada: 11, 12, 23, 14, 25, 50, 8, 18, 29, 10 As estruturas mostradas ficam I. Pilha: (topo) II. Fila: (começo) (fim) III. Fila: (começo) (fim) IV. Pilha: (topo) V. A fila mostrada fica com os elementos em ordem invertida dos dados de entrada Está correto o que se afirma APENAS em A) III e IV. B) II e IV. C) I, II e III. D) I, III e V. E)I, IV e V. 33

34 Resumo Fila insere: insere novo elemento no final da fila remove: remove elemento do início da fila 34

35 Referências FARIAS, Professor Ricardo. Notas de Aula Disponível em: < Acesso em: 30 set Capítulo 12 do livro Introdução a Estrutura de Dados: CELES, Waldemar; CERQUEIRA, Renato; RANGEL, José Lucas. Introdução a Estruturas de Dados: com técnicas de programação em C. Elsevier,

36 Exercício Prático (Avaliação) Disponível no arquivo ExercícioPrático.pdf 36

37 Estruturas de Dados Filas

Aula 7 e 8 Filas e suas Aplicações. Prof. Leticia Winkler

Aula 7 e 8 Filas e suas Aplicações. Prof. Leticia Winkler Aula 7 e 8 Filas e suas Aplicações Prof. Leticia Winkler 1 Definição de Fila (Queue) São estruturas de dados do tipo FIFO (first-in first-out) - o primeiro elemento a ser inserido, será o primeiro a ser

Leia mais

INF1007 Programação 2 9 Pilhas. (c) Dept. Informática - PUC-Rio 1

INF1007 Programação 2 9 Pilhas. (c) Dept. Informática - PUC-Rio 1 INF1007 Programação 2 9 Pilhas (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Introdução Interface do tipo pilha Exemplo de uso: verificação de expressões Implementação de pilha com lista encadeada

Leia mais

Estruturas de Dados. Módulo 11 Pilhas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 11 Pilhas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 11 Pilhas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 13 Pilhas Edirlei Soares de Lima Pilha Uma pilha é uma estrutura de dados dinâmica na qual novos elementos são sempre inseridos no topo da pilha e acessados

Leia mais

S U M Á R I O. Definição de Estrutura de Dados. Vetores. Listas Ligadas. Pilhas. Filas

S U M Á R I O. Definição de Estrutura de Dados. Vetores. Listas Ligadas. Pilhas. Filas ESTRUTURA DE DADOS DEBORAH FERREIRA S U M Á R I O Definição de Estrutura de Dados 1 Vetores 2 Listas Ligadas 4 Pilhas 6 Filas 8 D E F I N I Ç Ã O D E E S T R U T U R A D E D A D O S Estruturas de dados

Leia mais

CES-11. Pilhas Definição Operações Filas. Operações Deques. Definição. Operações

CES-11. Pilhas Definição Operações Filas. Operações Deques. Definição. Operações CES-11 Pilhas Definição Operações Filas Definição Operações Deques Definição Operações PILHAS, FILAS E DEQUES As listas lineares admitem inserção e eliminação em qualquer posição. Pilhas, filas e deques

Leia mais

Algoritmos e Estruturas de Dados II IEC013. TAD, Pilhas e Filas. Prof. César Melo

Algoritmos e Estruturas de Dados II IEC013. TAD, Pilhas e Filas. Prof. César Melo Algoritmos e Estruturas de Dados II IEC013 TAD, Pilhas e Filas Prof. César Melo TAD: Definição SE programa = definição de um tipo de dados + operação sobre dados desse tipo + restrições sobre dados e operações

Leia mais

INF1007: Programação 2 8 Listas Encadeadas. (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 8 Listas Encadeadas. (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 8 Listas Encadeadas (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Motivação Listas encadeadas Implementações recursivas Listas de tipos estruturados (c) Dept. Informática

Leia mais

Algoritmos e Estruturas de Dados II IEC013

Algoritmos e Estruturas de Dados II IEC013 Algoritmos e Estruturas de Dados II IEC013 TAD, Pilhas e Filas Prof. César Melo Todos os créditos ao Prof. Leandro Galvão TAD: Definição SE programa = definição de um tipo de dados + operação sobre dados

Leia mais

Universidade Estadual Paulista Júlio de Mesquita Filho UNESP

Universidade Estadual Paulista Júlio de Mesquita Filho UNESP Introdução à Computação II AULA 16 BCC Noturno - EMA896115B Prof. Rafael Oliveira olivrap@gmail.com Universidade Estadual Paulista Júlio de Mesquita Filho UNESP Rio Claro 2014 (Sem 2) Estruturas de Dados

Leia mais

Aula 11 Pilha Dinâmica. prof Leticia Winkler

Aula 11 Pilha Dinâmica. prof Leticia Winkler Aula 11 Pilha Dinâmica prof Leticia Winkler 1 Pilha Dinâmica (Dynamic Stack) Pilha implementada através de uma lista linear encadeada. É uma lista linear encadeada em que as operações de inserção e retirada

Leia mais

Pilhas. ser acessada somente por uma de suas extremidades. pelo topo. S Uma pilha é uma estrutura linear de dados que pode

Pilhas. ser acessada somente por uma de suas extremidades. pelo topo. S Uma pilha é uma estrutura linear de dados que pode Pilhas e Filas Pilhas Uma pilha é uma estrutura linear de dados que pode ser acessada somente por uma de suas extremidades. Uma pilha é uma lista LIFO (do inglês last-in-first out) o último a entrar é

Leia mais

Linguagem C: Listas Encadeadas

Linguagem C: Listas Encadeadas Prof. Paulo R. S. L. Coelho paulo@facom.ufu.br Faculdade de Computação Universidade Federal de Uberlândia GEQ007 Organização 1 Introdução 2 3 Organização Introdução 1 Introdução 2 3 Introdução Introdução

Leia mais

Módulo 10 Listas Encadeadas

Módulo 10 Listas Encadeadas Estruturas de Dados Módulo 10 Listas Encadeadas 9/8/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus

Leia mais

Estruturas de Dados Encadeadas

Estruturas de Dados Encadeadas CURSO: Ciência da Computação DATA: / / 2016 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 14 APRESENTAÇÃO Na aula de hoje vamos apresentar e discutir conceitos

Leia mais

Filas Exemplo de Aplicação

Filas Exemplo de Aplicação Filas Exemplo de Aplicação Uma aplicação interessante para filas é a ordenação por distribuição, descrita a seguir. Seja uma lista l composta de n chaves, cada qual representada por um inteiro numa base

Leia mais

Métodos Computacionais. Listas Encadeadas

Métodos Computacionais. Listas Encadeadas Métodos Computacionais Listas Encadeadas Vetores Declaração de vetor implica na especificação de seu tamanho Não se pode aumentar ou diminuir tamanho Outra alternativa no uso de vetores é alocar dinamicamente

Leia mais

1. Listas sequenciais versus listas ligadas. Lista sequencial

1. Listas sequenciais versus listas ligadas. Lista sequencial Alocação Dinâmica Listas Ligadas 1. Listas sequenciais versus listas ligadas Lista sequencial Uma lista sequencial é um conjunto de elementos contíguos na memória. Um vetor é o melhor exemplo de lista

Leia mais

Filas. Nesta aula veremos o ADT fila Em um computador existem muitas filas esperando pela impressora, acesso ao disco ou, num sistema timesharing,

Filas. Nesta aula veremos o ADT fila Em um computador existem muitas filas esperando pela impressora, acesso ao disco ou, num sistema timesharing, Filas Nesta aula veremos o ADT fila Em um computador existem muitas filas esperando pela impressora, acesso ao disco ou, num sistema timesharing, pelo uso da CPU Algoritmos e Estruturas de Dados I José

Leia mais

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas

UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra

Leia mais

Aula 5 e 6 Pilhas e suas Aplicações. prof Leticia Winkler

Aula 5 e 6 Pilhas e suas Aplicações. prof Leticia Winkler Aula 5 e 6 Pilhas e suas Aplicações prof Leticia Winkler 1 Definição de Pilha (Stack) São estruturas de dados do tipo LIFO (last-in first-out) - o último elemento a ser inserido, será o primeiro a ser

Leia mais

Estruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011

Estruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011 Estruturas de Dados Aula 12: Outras Implementações de Listas 18/04/2011 Fontes Bibliográficas Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1

Estruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)

Leia mais

Conceitos. Pilhas e Filas. Conceitos e Implementação em linguagem C. Maria Adriana Vidigal de Lima. Março

Conceitos. Pilhas e Filas. Conceitos e Implementação em linguagem C. Maria Adriana Vidigal de Lima. Março Conceitos e Implementação em linguagem C Março - 2009 1 Conceitos 2 Organização dos dados Em determinadas aplicações, as pilhas e filas representam estruturas de dados importantes, nas quais seus elementos

Leia mais

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula

Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Universidade Estadual de Mato Grosso do Sul Bacharelado em Ciência da Computação Algoritmos e Estruturas de Dados II Prof. Fabrício Sérgio de Paula Tópicos Introdução Alocação sequencial Listas lineares,

Leia mais

Professora Jeane Melo

Professora Jeane Melo Professora Jeane Melo Roteiro Lista Encadeada Alocação: Estática x Dinâmica O que são Ponteiros? Ponteiros Variáveis que Armazenam Endereços de Memória Mas, toda variável não é armazenada na memória? Ponteiros

Leia mais

Algoritmos e Estruturas de Dados Prof. Osório PIP/CA - Aula 03 Pag.: 1

Algoritmos e Estruturas de Dados Prof. Osório PIP/CA - Aula 03 Pag.: 1 lgoritmos e Estruturas de ados Prof Osório PIP/ - ula 03 Pag: 1 - UNIVERSIE O VLE O RIO OS SINOS ENTRO E IÊNIS EXTS E TENOLÓGIS (6/6) PIP/ - Programa Interdisciplinar de Pós-Graduação em omputação plicada

Leia mais

Aula 14 Listas Duplamente Encadeadas. prof Leticia Winkler

Aula 14 Listas Duplamente Encadeadas. prof Leticia Winkler Aula 14 Listas Duplamente Encadeadas prof Leticia Winkler 1 Lista Duplamente Encadeada É um tipo de lista encadeada que pode ser vazia (NULL) ou que pode ter um ou mais nós, sendo que cada nó possui dois

Leia mais

Pilhas e Filas. Algoritmos e Estruturas de Dados Flavio Figueiredo (http://flaviovdf.github.io)

Pilhas e Filas. Algoritmos e Estruturas de Dados Flavio Figueiredo (http://flaviovdf.github.io) Pilhas e Filas Algoritmos e Estruturas de Dados 2 2017-1 Flavio Figueiredo (http://flaviovdf.github.io) 1 Pilhas 2 Pilhas (Stack) Estrutura similar às listas lineares que vimos na última aula [Mais Simples]

Leia mais

Instituto Luterano de Ensino Superior de Ji-Paraná Curso Bacharelado em Informática Estrutura de Dados I Prof.: José Luiz A.

Instituto Luterano de Ensino Superior de Ji-Paraná Curso Bacharelado em Informática Estrutura de Dados I Prof.: José Luiz A. 1 Instituto Luterano de Ensino Superior de Ji-Paraná Curso Bacharelado em Informática Prof.: José Luiz A. Duizith Procedimento Insere_Esquerda (Lista,Valor) Aloque(Aux) Se (Aux = Nil) Senao Aux.Dado Valor

Leia mais

Programação II. Árvores Binárias (Binary Trees) Bruno Feijó Dept. de Informática, PUC-Rio

Programação II. Árvores Binárias (Binary Trees) Bruno Feijó Dept. de Informática, PUC-Rio Programação II Árvores Binárias (Binary Trees) Bruno Feijó Dept. de Informática, PUC-Rio Árvores Dados organizados de maneira hierárquica Exemplos: arquivos em diretórios, subdivisão de espaço 2D em um

Leia mais

programas = estrutura de dados + algoritmos

programas = estrutura de dados + algoritmos Algoritmos e Estruturas de Dados I1 Prof. Eduardo 1 1. INTRODUÇÃO O mundo tem mudado rapidamente com ajuda dos computadores. Podemos citar as pesquisas espaciais, o projeto genoma, os simuladores de vôo,

Leia mais

Módulo 5 Vetores e Alocação Dinâmica

Módulo 5 Vetores e Alocação Dinâmica Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora

Leia mais

Listas Ligadas (Encadeadas) Listas Simplesmente Encadeadas

Listas Ligadas (Encadeadas) Listas Simplesmente Encadeadas Listas Ligadas (Encadeadas) Matrizes são estruturas de dados muito úteis fornecidas nas linguagens de programação. No entanto, elas têm pelo menos duas limitações: 1- Seu tamanho tem que ser conhecido

Leia mais

DAINF - Departamento de Informática

DAINF - Departamento de Informática DAINF - Departamento de Informática Algoritmos 2 - Árvore binária de busca Prof. Alex Kutzke ( http://alex.kutzke.com.br/courses ) 30 de Novembro de 2015 Slides adaptados do material produzido pelo Prof.

Leia mais

Revisão de TDA, Pilhas e Filas

Revisão de TDA, Pilhas e Filas Revisão de TDA, Pilhas e Filas Professor: Santiago Viertel dcc2sv@joinville.udesc.br Sumário Tipos de Dados Abstratos Pilhas Conceito Pilha Estática Filas Conceito Filas Estáticas (FEMR, FEMI e FEC) Tipos

Leia mais

Métodos Computacionais. Fila

Métodos Computacionais. Fila Métodos Computacionais Fila Definição de Fila Fila é uma estrutura de dados dinâmica onde: Inserção de elementos se dá no final e a remoção no início O primeiro elemento que entra é o primeiro que sai

Leia mais

Fila. Algoritmos e Estruturas de Dados I

Fila. Algoritmos e Estruturas de Dados I Fila Algoritmos e Estruturas de Dados I Fila O que é? Para que serve? 2 Biblioteca Problema: automação de uma biblioteca Todos os livros devem ser cadastrados O sistema deve informar se um livro está disponível

Leia mais

3.2.2 Pilha (LIFO - last in, first out) - Inserção e remoção apenas no final da lista.

3.2.2 Pilha (LIFO - last in, first out) - Inserção e remoção apenas no final da lista. 3. Estruturas Lineares (Listas Lineares) 3.1 Definição Uma lista linear é uma estrutura dinâmica caracterizada por uma seqüência ordenada, no sentido de sua posição relativa, de elementos (nós) L[1], L[2],,

Leia mais

Estrutura de Dados II. Prof. Sérgio Portari

Estrutura de Dados II. Prof. Sérgio Portari Estrutura de Dados II Prof. Sérgio Portari - 2016 Plano de Ensino EMENTA: Filas, Árvores e suas generalizações: árvores binárias, árvores de busca, árvores balanceadas, árvores B e B+. Aplicações de árvores

Leia mais

Algoritmos e Estrutura de Dados. Aula 05 Estrutura de Dados: Listas (Parte II) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Aula 05 Estrutura de Dados: Listas (Parte II) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 05 Estrutura de Dados: Listas (Parte II) Prof. Tiago A. E. Ferreira Listas Seqüenciais Estática Seqüencial É implementada usando um vetor Deve-se determinar qual a

Leia mais

Lista Encadeada (Linked List)

Lista Encadeada (Linked List) Lista Encadeada (Linked List) As listas ou listas encadeadas são a estrutura de dados mais simples concebível excetuando-se naturalmente os arrays. Listas encadeadas nada mais são que uma seqüência de

Leia mais

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 6 Ordenação de Vetores. 01/10/2015 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 6 Ordenação de Vetores 01/10/2015 (c) Dept. Informática - PUC-Rio 1 Tópicos Introdução Ordenação bolha (bubble sort) Ordenação por seleção (selection sort) 01/10/2015 (c) Dept. Informática

Leia mais

INF1007: Programação 2. 2 Alocação Dinâmica. 17/02/2014 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2. 2 Alocação Dinâmica. 17/02/2014 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 2 Alocação Dinâmica 17/02/2014 (c) Dept. Informática - PUC-Rio 1 Tópicos Alocação dinâmica Vetores locais e funções 17/02/2014 (c) Dept. Informática - PUC-Rio 2 Alocação Dinâmica

Leia mais

Programação de Computadores II. Cap. 17 Busca

Programação de Computadores II. Cap. 17 Busca Programação de Computadores II Cap. 17 Busca Livro: Waldemar Celes, Renato Cerqueira, José Lucas Rangel. Introdução a Estruturas de Dados, Editora Campus (2004) Slides adaptados dos originais dos profs.:

Leia mais

LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados

LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS Listas Lineares Como visto anteriormente, as operações básicas para o nosso TAD Lista Linear são: FLVazia Vazia Retira Insere Imprime A implementação através de arrays

Leia mais

16/11/2015 Lista Tipo de dado Lista - Implementação Lista - Implementação Lista - Implementação 3

16/11/2015 Lista Tipo de dado Lista - Implementação Lista - Implementação Lista - Implementação 3 Listas, pilhas e filas Profa. Vânia de Oliveira Neves Slides baseados no material da Profa. Graça Nunes Listas Lista Lista Uma Lista Linear é uma coleção ordenada de componentes de um mesmo tipo. Ela é

Leia mais

AVALIAÇÃO DE CONHECIMENTO ESPECÍFICO

AVALIAÇÃO DE CONHECIMENTO ESPECÍFICO AVALIAÇÃO DE CONHECIMENTO ESPECÍFICO PROGRAMA DE PÓS- GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO 01. Toda arvore binária possui as seguintes propriedades: I. Todos os nós de uma sub- árvore direita são maiores

Leia mais

Aula 2 Listas Lineares Sequenciais. prof Leticia Winkler

Aula 2 Listas Lineares Sequenciais. prof Leticia Winkler Aula 2 Listas Lineares Sequenciais prof Leticia Winkler 1 Conteúdo Revisão de Vetor Definição Declaração Acesso dos Elementos Inicialização dos Elementos Exemplo Vetor e Função Lista Linear Operações com

Leia mais

Algoritmos e Estruturas de Dados I

Algoritmos e Estruturas de Dados I Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin (daniel.martin@ufabc.edu.br) Aula 6 Modularização Método que consiste em organizar programas grandes em pequenas partes (módulos) Cada módulo tem

Leia mais

Listas Encadeadas. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR

Listas Encadeadas. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Listas Encadeadas David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Listas Encadeadas Características: Tamanho da lista não é pré-definido Cada elemento guarda quem é o próximo Elementos não

Leia mais

EAD PILHA - DEFINIÇÃO

EAD PILHA - DEFINIÇÃO EAD PILHA - DEFINIÇÃO Os seus elementos são processados pela ordem inversa à ordem de chegada: - o último elemento a entrar na Pilha é o primeiro a sair (LIFO Last In First Out ). Qualquer operação que

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 14 Árvores Binárias Edirlei Soares de Lima Árvores Uma estrutura de dados do tipo árvore permite que dados sejam organizados de maneira hierárquica.

Leia mais

Algoritmos e Estruturas de Dados I

Algoritmos e Estruturas de Dados I Algoritmos e Estruturas de Dados I Prof. Daniel M. Martin (daniel.martin@ufabc.edu.br) Aula 8 Aplicação de Fila Calcular a distância entre pessoas no Facebook Aplicação de Fila Calcular a distância entre

Leia mais

Aula 10 Alocação Dinâmica de Memória Listas Encadeadas. prof Leticia Winkler

Aula 10 Alocação Dinâmica de Memória Listas Encadeadas. prof Leticia Winkler Aula 10 Alocação Dinâmica de Memória Listas Encadeadas prof Leticia Winkler 1 Prof. Leticia Winkler 2 Alocação de Memória Reservar na memória (principal), o espaço para guardar a informação através da

Leia mais

Estruturas de Dados I

Estruturas de Dados I Estruturas de Dados I Rodrigo Porfírio da Silva Sacchi rodrigosacchi@ufgd.edu.br 3410-2075 Aula 6: Listas Encadeadas e Alocação Dinâmica Listas Encadeadas e Alocação Dinâmica Alocação Seqüencial versus

Leia mais

Alocação de Memória. Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná (UFPR)

Alocação de Memória. Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná (UFPR) Alocação de Memória Linguagem de Programação Estruturada 1 Alocação dinâmica e ponteiros Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná (UFPR) Sumario Introdução Alocação Estática

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Lista Linear Seqüencial (Alocação Estática) Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação

Leia mais

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CES-11 Algoritmos e Estruturas de Dados Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CES-11 Pilhas Filas Deques Pilhas,,f filas e deques Vimos que as listas lineares admitem inserção e eliminação

Leia mais

Revisão: Tipo Abstrato de Dados Recursividade

Revisão: Tipo Abstrato de Dados Recursividade Algoritmos e Estrutura de Dados II Revisão: Tipo Abstrato de Dados Recursividade Prof a Karina Oliveira kkco@dei.unicap.br Introdução Estudo das estruturas de dados envolve dois objetivos complementares:

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 10: Pilhas Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes Email: reifortes@iceb.ufop.br

Leia mais

Listas Lineares Ordenadas

Listas Lineares Ordenadas Listas Lineares Ordenadas Algoritmos e Estruturas de Dados I Nesta apresentação será apresentado o ADT lista linear ordenada Uma lista linear ordenada, ou simplesmente lista ordenada há uma ordem entre

Leia mais

Estruturas de Dados Pilhas, Filas, Listas

Estruturas de Dados Pilhas, Filas, Listas PMR2300 Escola Politécnica da Universidade de São Paulo Introdução Estruturas de dados são objetos que armazenam dados de forma eficiente, oferecendo certos serviços para o usuário (ordenação eficiente

Leia mais

Pilhas e Filas. Prof. Walteno Martins Parreira Júnior.

Pilhas e Filas. Prof. Walteno Martins Parreira Júnior. Licenciatura em Computação Algoritmos e Estrutura de Dados Pilhas e Filas Prof. Walteno Martins Parreira Júnior www.waltenomartins.com.br waltenomartins@iftm.edu.br 2016 SUMÁRIO 1. PILHAS... 2 1.1. Introdução...

Leia mais

I Alocação dinâmica de memória é utilizada para alocar espaço de memória para armazenar conteúdos de variáveis;

I Alocação dinâmica de memória é utilizada para alocar espaço de memória para armazenar conteúdos de variáveis; 30/08/2016 V UNIVIRTUS POL 5 Nota: 100 isciplina(s): strutura de ados ata de início: 17/08/2016 22:12 Prazo máximo entrega: - ata de entrega: 17/08/2016 22:28 Questão 1/10 Sobre alocação dinâmica de memória,

Leia mais

Estrutura de Dados. Estrutura de Dados Recursividade. Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0!

Estrutura de Dados. Estrutura de Dados Recursividade. Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0! Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br Exemplo: 5! = 5 x 4! 4! = 4 x 3! 3! = 3 X 2! 2! = 2 x 1! 1! = 1 x 0! Fatorial de 0 = 1 Recursividade 1 Recursividade

Leia mais

Algoritmos e Estruturas de Dados II IEC013

Algoritmos e Estruturas de Dados II IEC013 Algoritmos e Estruturas de Dados II IEC013 Revisão: Listas Encadeadas Prof. César Melo Todos os créditos reservados ao professor Leandro Galvão Listas Encadeadas Listas encadeadas ou listas ligadas representam

Leia mais

Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes

Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes Árvores Fabrício J. Barth BandTec - Faculdade de Tecnologia Bandeirantes Setembro de 2011 Tópicos Introdução Árvores binárias Implementação em Java Ordens de percurso em árvores binárias Altura de uma

Leia mais

Árvores. Prof. César Melo DCC/ICE/UFAM

Árvores. Prof. César Melo DCC/ICE/UFAM Árvores Prof. César Melo DCC/ICE/UFAM Introdução As estruturas anteriores são chamadas de unidimensionais (ou lineares) Exemplo são vetores e listas Não podem ser usadas como hierarquias. Exemplo: árvore

Leia mais

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)

Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas) Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 Lista Obrigatória 02 - Prof. Rafael Oliveira (Deve ser entregue em PDF via Moodle: Escolha apenas 5 exercícios para entrega) Exercício 01

Leia mais

ÁRVORES E ÁRVORE BINÁRIA DE BUSCA

ÁRVORES E ÁRVORE BINÁRIA DE BUSCA ÁRVORES E ÁRVORE BINÁRIA DE BUSCA Prof. André Backes Definição 2 Diversas aplicações necessitam que se represente um conjunto de objetos e as suas relações hierárquicas Uma árvore é uma abstração matemática

Leia mais

INF1007: Programação 2 10 Árvores Binárias. (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 10 Árvores Binárias. (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 10 Árvores Binárias (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Introdução Árvores binárias Representação em C Ordens de percurso em árvores binárias Altura de uma árvore

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 17 a Aula Tipos abstratos

Pedro Vasconcelos DCC/FCUP. Programação Funcional 17 a Aula Tipos abstratos Programação Funcional 17 a Aula Tipos abstratos Pedro Vasconcelos DCC/FCUP 2014 Tipos concretos Até agora definimos um novo tipo de dados começando por listar os seus construtores. data Bool = False True

Leia mais

Métodos Computacionais. Variações de Listas Encadeadas

Métodos Computacionais. Variações de Listas Encadeadas Métodos Computacionais Variações de Listas Encadeadas Variações de Listas Encadeadas Listas podem variar quanto ao: Tipo de encadeamento Simples Circulares Duplas Circulares e Duplas Conteúdo Tipos Primitivos

Leia mais

TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 2 PERÍODO MÓDULO 3 AVALIAÇÃO MP2 DATA 2/10/2008 ESTRUTURAS DE DADOS 2008/2

TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 2 PERÍODO MÓDULO 3 AVALIAÇÃO MP2 DATA 2/10/2008 ESTRUTURAS DE DADOS 2008/2 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 2 PERÍODO MÓDULO 3 AVALIAÇÃO MP2 DATA 2/10/2008 ESTRUTURAS DE DADOS 2008/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade:

Leia mais

Paradigmas de Programação

Paradigmas de Programação Tipos Abstractos de Dados (ADT) Estruturas construídas para armazenar determinados tipos de dados e que especificam operações que permitem a manipulação desses dados. Estudaremos duas das mais simples

Leia mais

ESTRUTURA DE DADOS FILAS SEQUENCIAIS

ESTRUTURA DE DADOS FILAS SEQUENCIAIS ESTRUTURA DE DADOS FILAS SEQUENCIAIS Prof. Dr. Daniel Caetano 2012-2 Objetivos Compreender o que é uma estrutura em fila Compreender sua aplicação Capacitar para implementar filas Atividade Estruturada!

Leia mais

Pilhas. Prof. Túlio Toffolo BCC202 Aula 11 Algoritmos e Estruturas de Dados I

Pilhas. Prof. Túlio Toffolo  BCC202 Aula 11 Algoritmos e Estruturas de Dados I Pilhas Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 11 Algoritmos e Estruturas de Dados I O que é uma pilha? 4 Pilha 3 4 1 2 3 2 1 TAD Pilha Tipo Abstrato de dados com a seguinte característica:

Leia mais

Criando seu próprio tipo de dado. Prof. Fabrício Olivetti de França

Criando seu próprio tipo de dado. Prof. Fabrício Olivetti de França Criando seu próprio tipo de dado Prof. Fabrício Olivetti de França Fração Vamos criar uma biblioteca de funções para trabalhar com frações. Uma fração é composta por numerador e denominador. Fração int

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória

Leia mais

Estruturas de Dados Aula 16: Árvores com Número Variável 13/06/2011

Estruturas de Dados Aula 16: Árvores com Número Variável 13/06/2011 Estruturas de Dados Aula 16: Árvores com Número Variável de Filhos 13/06/2011 1 Fontes Bibliográficas Livros: Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 13; Projeto de Algoritmos

Leia mais

Pilha e Fila. Pilha em C. Definir o registro que representará cada elemento da pilha.

Pilha e Fila. Pilha em C. Definir o registro que representará cada elemento da pilha. 1 Estrutura de Dados II Pilha e Fila Pilha em C Definir o registro que representará cada elemento da pilha. No início a pilha estará vazia, logo o ponteiro topo tem o valor NULL. As operações de inserção

Leia mais

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P3 26/11/2010

Departamento de Informática - PUC-Rio INF 1007 Programação 2 P3 26/11/2010 Departamento de Informática - PUC-Rio INF 1007 Programação 2 P3 26/11/2010 Aluno: Matrícula: Turma: Instruções: 1) Escreva seu nome completo, matrícula e turma em todas as folhas desta prova; 2) A prova

Leia mais

Lista com descritor (continuação)

Lista com descritor (continuação) Lista com descritor (continuação) Rotina para remover o eiro elemento de uma LLSECD: char removeiniciollsecd(tdescritor *l, TInfo val) { p = l->; l->=p->prox; if (l->==1) Rotina para remover o último nó

Leia mais

Pilhas. Algoritmos e Estruturas de Dados I. José Augusto Baranauskas Departamento de Física e Matemática FFCLRP-USP

Pilhas. Algoritmos e Estruturas de Dados I. José Augusto Baranauskas Departamento de Física e Matemática FFCLRP-USP Pilhas Algoritmos e Estruturas de Dados I Nesta aula veremos o ADT pilha Uma pilha é usada em muitas situações tais como avaliação de expressões aritméticas, chamada e retorno de procedimentos e funções

Leia mais

INF1007: Programação 2 7 Busca em Vetores. 01/04/2014 (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 7 Busca em Vetores. 01/04/2014 (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 7 Busca em Vetores 01/04/2014 (c) Dept. Informática - PUC-Rio 1 Tópicos Principais Busca em vetor Busca linear Busca binária 01/04/2014 (c) Dept. Informática - PUC-Rio 2 Busca em

Leia mais

SCC122 - Estruturas de Dados. Lista Estática Seqüencial

SCC122 - Estruturas de Dados. Lista Estática Seqüencial SCC122 - Estruturas de Dados Lista Estática Seqüencial Lista Uma lista é uma estrutura que armazena elementos de forma alinhada, ou seja, com elementos dispostos um após o outro. Ex.: Listas de nomes,

Leia mais

SUMÁRIO. Fundamentos Árvores Binárias Árvores Binárias de Busca

SUMÁRIO. Fundamentos Árvores Binárias Árvores Binárias de Busca ÁRVORES SUMÁRIO Fundamentos Árvores Binárias Árvores Binárias de Busca 2 ÁRVORES Utilizadas em muitas aplicações Modelam uma hierarquia entre elementos árvore genealógica Diagrama hierárquico de uma organização

Leia mais

void push(int i){ if (num<max) vet[num++]=i; else { printf(">>> Erro: overflow na pilha!!!\n"); printf("%d nao foi empilhado!!!

void push(int i){ if (num<max) vet[num++]=i; else { printf(>>> Erro: overflow na pilha!!!\n); printf(%d nao foi empilhado!!! Estruturas de Dados Lista 2: soluções J. L. Rangel 1. Suponha que uma pilha é representada através de um vetor vet e de um inteiro num. As declarações podem ser #define MAX 100 int vet[max], num; Escreva

Leia mais

Documento de uso exclusivo da unidade, não possui valor legal. 28/06/ :43:00. Matéria: Carga Horária Total. Prática: 44 Campo: 44

Documento de uso exclusivo da unidade, não possui valor legal. 28/06/ :43:00. Matéria: Carga Horária Total. Prática: 44 Campo: 44 Disciplina: CCT0021 - ESTRUTURA DE DADOS Matéria: Carga Horária Total Teórica: 44 Prática: 44 Campo: 44 Tipo Curso: 4 - GRADUAÇÃO TECNOLÓGICA Curso(s): 35 - SISTEMAS DE INFORMAÇÃO 4091 - ANÁLISE E DESENVOLVIMENTO

Leia mais

Pesquisa Linear. Adriano J. Holanda 15/3/2016

Pesquisa Linear. Adriano J. Holanda 15/3/2016 Pesquisa Linear Adriano J. Holanda 15/3/2016 Busca Linear em memória principal Introdução O dados estarão sempre armazenados na memória principal (DRAM 1 ): não há necessidade de acesso à memória secundária

Leia mais

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches Juliana de Melo Bezerra CES- Algoritmos e Estruturas de Dados Carlos Alberto Alonso Sanches Juliana de Melo Bezerra Árvores CES- Operações sobre uma árvore Estruturas para armazenar árvores Contígua Contígua melhorada Encadeada

Leia mais

Linguagem C: Árvores Binarias

Linguagem C: Árvores Binarias Instituto de C Linguagem C: Árvores Binarias Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Tópicos Principais Introdução Árvores binárias Implementação

Leia mais

Pilhas e Filas Acesso

Pilhas e Filas Acesso Listas lineares especiais Pilhas e Filas Acesso consulta inserção remoção Disciplina restrita de acesso Disciplina restrita acesso permitido somente em alguns nós Listas lineares especiais mais usuais

Leia mais

Árvores Binárias de Busca

Árvores Binárias de Busca 0. Um breve comentário sobre os algoritmos de busca em tabelas De uma maneira geral, realizam-se operações de busca, inserção e remoção de elementos numa tabela. A busca sequencial tradicional é O(N).

Leia mais

Algoritmos e Estruturas de Dados 2005/2006

Algoritmos e Estruturas de Dados 2005/2006 Pilhas e Filas Algoritmos e Estruturas de Dados 005/006 Pilhas Pilha estrutura de dados linear em que a inserção e a remoção de elementos de uma sequência se faz pela mesma extremidade, designada por topo

Leia mais