Listas Lineares Duplamente Encadeada (LLDE)
|
|
|
- Zilda Martinho Taveira
- 8 Há anos
- Visualizações:
Transcrição
1 Listas Lineares Duplamente Encadeada (LLDE) Nas listas com descritores vistas anteriormente a operação de remoção do último nó apresenta a necessidade de percorrer os nós seqüencialmente, a partir do primeiro elemento, até chegarmos ao penúltimo nó. Para se evitar esse percurso, é possível estruturar uma lista de forma que possa ser percorrida em ambos os sentidos (do início até o fim e do fim até o início). Uma organização implementando esse tipo de percurso é denominada lista duplamente encadeada. Esquematicamente podemos representar uma Lista Linear Duplamente Encadeada (LLDE) como: Prim Qtd 3 Últ Maria José Pedro Cada nó de uma lista desse tipo possui pelo menos três campos. Um campo ponteiro indicando o próximo nó, outro ponteiro indicando o nó anterior e o terceiro campo conto os dados. Os tipos em Pascal para manter uma LLDECD podem ser definidos como: Type TInfo=string; PNo=^TNo; TNo=record Esq, Dir: PNo; Info: Tinfo TDescritor=record Prim, Ult: PNo; Qtd: word Lista: TDescritor; Iniciação de uma LLDECD: procedure IniciaLLDECD( L: TDescritor) with L do Prin:=nil; Ult:=nil; Qtd:=0 1
2 Inserção de um nó no início da lista: Exercícios: procedure InsereInicioLLDECD( L:TDescritor; Val: TInfo); p: PNo; new(p); p^.esq:=nil; p^.info:=val; p^.dir:=l.prim; L.Ult:=p L.Prim^.Esq:=p; L.Prim:=p; inc(l.qtd) Responda: numa representação de uma LLDE sempre é possível se dizer que: p é igual a p^.dir^.esq e é igual a p^.esq^.dir.? Faça uma rotina para inserir um nó no fim da lista. Rotina para remover o primeiro nó da lista: function RemoveInicioLLDECD( L: TDescritor; Val: TInfo): boolean; p: PNo; RemoveInicioLLDECD:=false p:=l.prim; L.Prim:=p^.Dir; dec(l.qtd); L.Ult:=nil L.Prim^.Esq:=nil; Val:=p^.Info; dispose(p); RemoveInicioLLDECD:=true Trecho da inclusão de um nó entre dois nós (o nó antes do ponto de inclusão é indicado pelo ponteiro q): new(p); p^.esq:=q; p^.info:=val; p^.dir:=q^.dir; q^.dir:=p; p^.dir^.esq:=p; 2
3 Trecho para excluir um nó entre dois outros ( o nó a ser excluído é indicado pelo ponteiro p): p^.esq^.dir:=p^.dir; p^.dir^.esq:=p^.esq; Val:=p^.Info; dispose(p); Remoção do último nó da lista: function RemoveUltimoLLDECD( L: TDescritor; Val: TInfo): boolean; p: PNo; RemoveUltimoLLDECD:=false p:=l.ult; L.Ult:=p^.Esq; dec(l.qtd); L.Prim:=nil L.Ult^.Dir:=nil; Val:=p^.Info; dispose(p); RemoveUltimoLLDECD:=true Obs.: note que na rotina acima não há mais a necessidade de se percorrer a lista desde o início para se encontrar o penúltimo nó. Listas Circulares Duplamente Encadeadas com Descritor (LCDECD) Neste tipo de lista o campo Dir do último nó indica o ereço do primeiro nó e o campo da Esq do primeiro nó contém o ereço do último nó. O descritor para este tipo de lista tem o seguinte formato: Type TInfo=string; PNo=^TNo; TNo=record Esq, Dir: PNo; Info: Tinfo TDescritor=record Prim: PNo; Qtd: word Lista: TDescritor; Note acima que não há necessidade do campo Ult. 3
4 Inicia uma LCDECD vazia: procedure InicioLCDECD( L: TDescritor); with L do Qtd:=0; Prim:=nil Prim Qtd 0 Representação de LCDECD com apenas um nó: Prim Qtd 1 Representação de LCDECD com três nós: Prim Qtd 3 Maria José Pedro Exercícios: 1. Crie as rotinas para manipular LCDECD. 2. Polinômios podem ser representados por listas, cujos nós são registros com 3 campos: coeficiente, expoente e referência ao nó seguinte. Por exemplo, o polinômio 3x 5 +2x+1=0 pode ser representado por: Poli Crie uma rotina para ler um polinômio em uma lista a partir do teclado. Crie uma rotina que some dois polinômios. Crie uma rotina para multiplicar dois polinômios. 3. Faça um programa que leia um arquivo texto e carregue cada linha em um nó de uma lista linear duplamente encadeada com descritor. Após o arquivo estar completamente lido, as setas sobe e desce podem ser usadas para mostrar uma linha do texto armazenado na lista. A tecla sobe serve para mostrar a linha acima da linha atualmente so mostrada, a tecla desce mostra a abaixo da linha atual. 4
5 Alocação dinâmica com GetMem Alocação de um vetor com tamanho determinado durante a execução. uses WinCRT; (*$R-*) const MaximoIndice=65528; type TipoElementoVetor=longint; TVet= array [1..1] of TipoElementoVetor; Vet: ^TVet; N, i: 1..MaximoIndice; Write('Digite o numero de elementos do vetor: '); ReadLn(N); (* Aloca memoria dinamicamente *) GetMem(Vet, N*SizeOf(TipoElementoVetor)); for i:=1 to N do Vet^[i]:=i; for i:=1 to N do WriteLn(Vet^[i]); (* Libera memoria *) FreeMem(Vet, N*SizeOf(TipoElementoVetor));. Alocação de uma matriz com tamanho determinado durante a execução. uses WinCRT; const MaxIndice=1000; type Indice= 1..MaxIndice; TipoElementoMatriz= real; Vetor= array [Indice] of TipoElementoMatriz; Matriz= array [Indice] of ^Vetor; Mat: ^Matriz; m, n, i, j: Indice; EspacoNecessario: longint; Write('Digite o numero de linhas da matriz: '); ReadLn(m); Write('Digite o numero de colunas da matriz: '); ReadLn(n); Writeln(MemAvail); if n*sizeof(tipoelementomatriz) mod 4 > 0 then (* verifica alinhamento *) EspacoNecessario:=2 (* ajusta o alinhamento *) EspacoNecessario:=0; (* já está alinhado *) EspacoNecessario:=longint(m)*(n*SizeOf(TipoElementoMatriz)+4+EspacoNecessario)+12; 5
6 if EspacoNecessario > MaxAvail then WriteLn('Nao existe memoria suficiente para esta matriz!'); Halt(4); (* Aloca o espaço para os ponteiros de cada linha *) GetMem(Mat, m*sizeof(mat)); (* Aloca o espaço para os dados de cada linha *) for i:=1 to m do GetMem(Mat^[i], n*sizeof(tipoelementomatriz)); (* Atribui dados *) for i:=1 to m do for j:=1 to n do Mat^[i]^[j]:=i*1000+j; (* Mostra os dados *) for i:=1 to m do for j:=1 to n do Write(Mat^[i]^[j]:15:0); Writeln (* Libera as linhas *) for i:=1 to m do FreeMem(Mat^[i], n*sizeof(tipoelementomatriz)); (* Libera os ponteiros para as linhas *) FreeMem(Mat, m*sizeof(mat)); Writeln(MemAvail);. Exercício: faça um programa que leia um arquivo e o coloque em uma lista duplamente encadeada. Cada nó da lista deve ter além dos ponteiros normais (próximo e anterior) um outro ponteiro do tipo PString (ponteiro para string). Cada linha quando for lida do arquivo deve ser colocada em uma String normal, em seguida deve-se proceder a alocação dinâmica do nó da lista e da área para alojar tal String. Veja abaixo a representação de uma lista desse tipo criada a partir de um arquivo com três linhas de texto. Observe que o tamanho do espaço de memória de cada linha depe no número de caracteres lidos. Linha 1 do arquivo Linha 2 Última linha 6
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ó
Universidade de São Paulo
Universidade de São Paulo Instituto de Ciências Matemáticas e Computação SCE5763 - Tipos e Estrutura de Dados - Luis Gustavo Nonato 2 a Lista de Exercícios 1. Seja A um array de inteiros. Escreva algoritmos
Tipos e Estruturas de Dados Profa. Graça Nunes Lista de Exercícios (Listas Encadeadas, Duplamente Encadeadas e Circulares)
Tipos e Estruturas de Dados Profa. Graça Nunes Lista de Exercícios (Listas Encadeadas, Duplamente Encadeadas e Circulares) 1. Refaça todos os itens do exercício 1 da Lista de Exercícios anterior (Listas
Pascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string
Pascal -Cabeçalho do programa Áreas do programa -Área de declarações -Corpo do programa - label - const - type - var - procedure - function - integer - real - byte - boolean - char - string Program
Listas - Outras. Listas Circulares Nós Cabeça Listas Duplamente Ligadas/Encadeadas Aplicações
Listas - Outras Listas Circulares Nós Cabeça Listas Duplamente Ligadas/Encadeadas Aplicações 5 e 7/10/2010 Listas Circulares Encadeadas Dinâmicas Se o nó next do último nó apontar para o primeiro, teremos
Listas Lineares. continuando...
Listas Lineares continuando... 1 Listas! relembrando: listas lineares agrupa informações referentes aum conjunto de elementos que, de alguma forma, se relacionam entre si! Uma lista linear ou está vazia,
Lista Ordenada. Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35
Lista Ordenada Estrutura de Dados Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35 Conteúdo Definição Operações Representações Contígua Encadeada Aplicação Exercícios 2
Linguagem Pascal. Prof. Antonio Almeida de Barros Junior
Linguagem Pascal Prof. Antonio Almeida de Barros Junior 1 Linguagem Pascal Criada para ser uma ferramenta educacional (Década de 70); Prof. Niklaus Wirth (Universidade de Zurique); Blaise Pascal (Matemático
Exemplos. Alocação Dinâmica de Pilhas. Pilhas. Pilhas. Implementação Seqüencial X Encadeada. SCE 182 Algoritmos e Estruturas de Dados I
SCE 182 Algoritmos e Estruturas de Dados I Uma pilha é uma lista linear em que a inserção ou eliminação de elementos somente pode ocorrer em uma das extremidades, que é chamada de TOPO da PILHA. D C B
Estrutura de Dados Polinómio
Estrutura de Dados Polinómio Estrutura de Dados: representação computacional + algorimos especializados Estrutura de Dados Polinómio P n (x) = nx a i x i i=0 Logo, Polinómio tem uma estrutura recorrente:
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
LISTA DE EXERCÍCIOS 2
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO DE CIÊNCIA DA COMPUTAÇÃO PROGRAMAÇÃO DE COMPUTADORES 1. TIPOS COMPOSTOS DE DADOS LISTA DE EXERCÍCIOS 2 1. Considerando as declarações abaixo, responda dizendo
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
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
Aula 20: Matrizes (Parte 2)
Aula 20: Matrizes (Parte 2) Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2018/2 Departamento de Computação UFOP Aulas anteriores Vetores Matrizes 2 / 15 Túlio Toffolo
Estruturas de Dados Estruturas de Dados Fundamentais
Estruturas de Dados Estruturas de Dados Fundamentais Prof. Eduardo Alchieri Estruturas de Dados Fundamentais Todos os tipos abstratos de dados (pilhas, filas, deques, etc.) podem ser implementados usando
Árvores Binárias de Pesquisa (ABP) INF01203 Estruturas de Dados. Operações. Árvores Binárias de Pesquisa (ABP) Caminhamento Central à Esquerda
Árvores Binárias de Pesquisa (ABP) INF03 Estruturas de Dados Árvores Binárias de Pesquisa apresentam uma relação de ordem entre os nodos ordem é definida por um campo denominado chave esq chave inf dir
Lista de Exercícios ICC 1 Ponteiros
Lista de Exercícios ICC 1 Ponteiros Professor Cláudio Fabiano de Motta Toledo - Todos os exercícios devem ser resolvidos utilizando ponteiros, alocação dinâmica e aritmética de ponteiros. Não utilize variáveis
UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio;
UNIVERSIDADE DE SÃO PAULO ICMC SCC 202 Algoritmos e Estrutura de Dados I - 2º Semestre 2010 Profa. Sandra Maria Aluísio; e-mail: [email protected] Lista de Exercícios Árvores, Árvores Binárias, Árvores
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
Computadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Tópicos Listas Encadeadas Introdução às listas encadeadas Manipulação de elementos Implementações recursivas Listas
Considere uma máquina que utiliza uma palavra de 10 bits. Suponha o seguinte padrão de bits:
PROVA DE CONHECIMENTOS ESPECÍFICOS 1 a QUESTÃO: (1, ponto) Representação binária Considere uma máquina que utiliza uma palavra de 1 bits. Suponha o seguinte padrão de bits: 1111. a) Indique o valor em
Estrutura de Dados Listas
Universidade Federal da Paraíba Centro de Informática Departamento de Informática Estrutura de Dados Listas 1 Tiago Maritan [email protected] Conteúdos Abordados O Conceito de Listas Listas com Representação
ALGORITMOS + PASCAL MATRIZES COM MAIS DE UMA DIMENSAO OU VETORES
ESTRUTURAS DE DADOS HOMOGÊNIAS MATRIZES COM MAIS DE UMA DIMENSAO OU VETORES Agora iremos aprender o uso de matrizes com duas dimensões, conhecidas também por matrizes bidimensionais ou arranjos (arrays).
Exercícios. Resposta: a) var valor: real; i: integer. b)
Exercícios 1.Sabendo que a função frac retorna a parte fracionária de um número. Ex: frac(10.7) 0.7 Faça: a) Declare as iáveis do código abaixo. b) Escreva como seria a saída desse código na tela do computador.
Aplicações de listas e outras estruturas. SCC-502 Algoritmos e Estruturas de Dados I
Aplicações de listas e outras estruturas SCC-52 Algoritmos e Estruturas de Dados I Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long int) são limitados Como somar números
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 [email protected] 2016 SUMÁRIO 1. PILHAS... 2 1.1. Introdução...
4ª Lista de Exercícios de Programação I
4ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. 1. Faça um algoritmo que leia 10 valores inteiros armazenando-os em um vetor e depois calcule a soma dos valores
Sumário. 1.1 Variáveis Globais e Locais Passagem de Parâmetro (por valor por referência) 1
Sumário Sobre as Autoras ix Introdução xi 1 Sub-rotinas 1 1.1 Variáveis Globais e Locais 1 1.2 Passagem de Parâmetro (por valor por referência) 1 2 Vetores e Matrizes 7 2.1 Vetores 7 2.2 Matrizes 8 2.2.1
Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões
Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome
Refinamentos sucessivos
Refinamentos sucessivos Objetivos: Estudar a técnica de refinamentos sucessivos Jogo: 2048 Implementaremos o jogo 2048, com o objetivo de estudar a manipulação dos elementos de uma matriz Utilizaremos
Lista de Exercícios 04
Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professor: Túlio Toffolo (www.decom.ufop.br/toffolo)
Algumas notas sobre PASCAL
Algumas notas sobre PASCAL PARTE I Anjolina Grisi de Oliveira 1 Um programa em PASCAL Esse texto inclui algumas notas sobre a linguagem PASCAL. As diferenças existentes entre os diversos compiladores não
Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida)
Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida) Não-terminais são nomes mnemônicos colocados entre parênteses angulares. Vocabulário terminal formado por
Matrizes esparsas: definição
Matrizes esparsas: definição o objetivo é mostrar os métodos de armazenamento e manipulação de matrizes esparsas esparsidade de uma matriz é a relação entre o número de elementos nulos de uma matriz e
Exercícios: Arquivos
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Arquivos 1. Codifique, compile e execute um programa que: (a) crie/abra
Á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
Laboratório de Programação A Exercícios sobre vetores e matrizes
Universidade Federal do Amazonas Instituto de Ciências Exatas Departamento de Ciência da Computação Laboratório de Programação A - 2011.1 Exercícios sobre vetores e matrizes Observação Esta lista será
Árvores Binárias de Busca (ABB) 18/11
Árvores Binárias de Busca (ABB) 18/11 Definição Uma Árvore Binária de Busca possui as mesmas propriedades de uma AB, acrescida da seguintes propriedade: Para todo nó da árvore, se seu valor é X, então:
Lista de Exercícios sobre Listas Implementadas por Encadeamento
Lista de Exercícios sobre Listas Implementadas por Encadeamento 1) Se você tem de escolher entre uma representação por lista encadeada ou uma representação usando posições contíguas de memória para um
Disciplina de Algoritmos e Programação. Vetor e Matriz
Disciplina de Algoritmos e Programação Vetor e Matriz Definição de Vetor Vetor é uma variável composta homogênea unidimensional Conjunto de variáveis de mesmo tipo que possuem mesmo identificador (nome)
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)
Pilhas e Filas Encadeadas. Algoritmos e Estruturas de Dados I
Pilhas e Filas Encadeadas Algoritmos e Estruturas de Dados I Pilha Lista linear: pilha Represente graficamente o funcionamento da pilha, representando a pilha vazia, a entrada e a saída de elementos Quais
Tabelas de dispersão/hash
Tabelas de dispersão/hash 1 Tabelas de dispersão/hash 1. Considere uma tabela de hash de tamanho m = 1000 e a função de hash h(k)= [m.(k.a % 1)], com A=( 5-1)/2. Calcule os valores de hash das chaves 61,
Á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 adequadas para representar hierarquias. Exemplo:
4ª Lista de Exercícios de Programação I
4ª Lista de Exercícios de Programação I Instrução As questões devem ser implementadas em C. 1. Faça um algoritmo que leia 10 valores inteiros armazenando-os em um vetor e depois calcule a soma dos valores
1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir:
Introdução à Informática 1 de 6 Data: 29/05/04 1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir: program eq2grau; uses WinCrt, Strings;
Á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
INF 1620 P2-01/11/03 Questão 1 Nome:
INF 1620 P2-01/11/03 Questão 1 Considere a implementação de uma lista encadeada para armazenar as notas dos alunos de uma turma dada pelo tipo abaixo: struct lista { char nome[81]; int mat; float p1, p2,
- UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática
Programação 1I Prof. Osório Listas simplesmente encadeadas Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática Programação II Disciplina:
ESTRUTURA DE DADOS LISTAS LINEARES
ESTRUTURA DE DADOS LISTAS LINEARES Prof. Dr. Daniel Caetano 2014-2 Objetivos Compreender as listas sequenciais Implementar uma Lista Sequencial com Vetor Compreender o uso de listas sequenciais Material
Linguagem C Vetores, Matrizes e Strings
Linguagem C Vetores, Matrizes e Strings José Gustavo de Souza Paiva Vetores Também conhecidos como variáveis compostas homogêneas unidimensionais É um tipo de dado que representa um conjunto de valores
Árvores & Árvores Binárias
Árvores & Árvores Binárias Problema Implementações do TAD Lista Linear Lista encadeada eficiente para inserção e remoção dinâmica de elementos, mas ineficiente para busca Lista seqüencial (ordenada) Eficiente
Introdução a Programação. Listas Encadeadas
Introdução a Programação Listas Encadeadas Tópicos da Aula Hoje aprenderemos que existem, além de vetores, estruturas de dados dinâmicas que podem armazenar coleções de dados Estruturas Dinâmicas e Vetores
Aula 13: Listas encadeadas (estruturas lineares)
Algoritmos e Estruturas de Dados I Aula 13: Listas encadeadas (estruturas lineares) Prof. Jesús P. Mena-Chalco [email protected] 1Q-2017 1 Estruturas (alguns autores usam o termo registro) 2 Linguagem
Tabelas Hash. informação, a partir do conhecimento de sua chave. Hashing é uma maneira de organizar dados que:
Tabelas Hash Tabelas Hash O uso de listas ou árvores para organizar informações é interessante e produz bons resultados. Porem, em nenhuma dessas estruturas se obtém o acesso direto a alguma informação,
INF 1620 P3-29/06/04 Questão 1 Nome:
INF 1620 P3-29/06/04 Questão 1 Considere um arquivo texto que descreve um conjunto de retângulos e círculos. Cada linha do arquivo contém a descrição de uma figura. O primeiro caractere da linha indica
SCC 202 Algoritmos e Estruturas de Dados I. Pilhas (Stacks) (implementação dinâmica)
SCC 202 Algoritmos e Estruturas de Dados I Pilhas (Stacks) (implementação dinâmica) Operações alocação encadeada dinâmica typedef struct elem{ tipo_info info; struct elem *lig; tipo_elem; typedef struct{
LINGUAGEM C: ARRAY: VETORES E MATRIZES
LINGUAGEM C: ARRAY: VETORES E MATRIZES Prof. André Backes POR QUE USAR ARRAY? As variáveis declaradas até agora são capazes de armazenar um único valor por vez. Sempre que tentamos armazenar um novo valor
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS. Aluno (s): 01 ATIVIDADE. Revisão de Conteúdo
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO - CAMPUS CAXIAS DISCIPLINA: Lab. de Programação PROF: MSc. Flávio Barros PERÍODO: 2 DATA: Aluno (s): 01 ATIVIDADE / / Revisão de Conteúdo
ÁRVORE BINÁRIA DE BUSCA
ÁRVORE BINÁRIA DE BUSCA Introdução O algoritmo de busca binária em vetores tem bom desempenho e deve ser usado quando temos os dados já ordenados. No entanto, se precisarmos inserir e remover elementos
Estruturas de Dados Filas
Estruturas de Dados Filas 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 Introdução Estamos acostumados
Programação de Computadores 1 Lista 2. Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP
Programação de Computadores 1 Lista 2 Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP 0.1 Vetores e Cadeias de Caracteres 1. Codifique um programa que leia e armazene duas notas de 10 alunos e calcule
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
1.2 OPERAÇÕES BÁSICAS EM ALGORITMOS E PROGRAMAS 18
ÍNDICE MÓDULO 1 INTRODUÇÃO À ALGORITMIA 11 1.1 PROGRAMAS E ALGORITMOS 12 Fases da programação 12 Algoritmos e algoritmia 13 Algoritmos em linguagem informal, pseudocódigo e fluxogramas 14 Símbolos utilizados
Estruturas de Dados I
Estruturas de Dados I Rodrigo Porfírio da Silva Sacchi [email protected] 3410-2075 Aula 6: Listas Encadeadas e Alocação Dinâmica Listas Encadeadas e Alocação Dinâmica Alocação Seqüencial versus
Armazenamento em disco com uso de índices
Armazenamento em disco com uso de índices Vimos até o momento árvores onde a chave aparenta ser o único objeto de interesse. Contudo, como sugere a representação de um nó, constante no slide 82, a chave
Aula 06 Introdução à Programação Matrizes
Aula 06 Introdução à Programação Matrizes Prof. Gustavo Callou [email protected] [email protected] Roteiro Matrizes Unidimensionais (Vetor) Bidimensionais String Exercícios Gustavo Callou DEINFO/UFRPE
