Capítulo 8: Abstrações de dados
|
|
- Renata Beretta Gil
- 6 Há anos
- Visualizações:
Transcrição
1 Capítulo 8: Abstrações de dados Ciência da computação: Uma visão abrangente 11a Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc.
2 Estruturas de dados básicas Matriz homogênea Matriz heterogênea Lista Pilha Fila Árvore Copyright 2012 Pearson Education, Inc. 0-2
3 Listas, pilhas e filas Fila Cabeça Topo Lista Pilha Cauda Base Cauda Cabeça Uma lista de nomes Uma Pilha de livros Uma Fila de pessoas Copyright 2012 Pearson Education, Inc. 0-3
4 Terminologia para listas Lista: Uma coleção de dados cujas entradas são arranjadas em seqüência Cabeça: O início da lista Cauda: O final da lista Copyright 2012 Pearson Education, Inc. 0-4
5 Terminologia para pilhas Pilha: Uma lista em que as entradas são removidas e inseridas apenas na cabeça LIFO: Last-in-first-out Topo: O cabeça de lista (pilha) Bottom ou base: A cauda da lista (pilha) Pop: Para remover a entrada na parte superior Push: Para inserir uma entrada no topo Copyright 2012 Pearson Education, Inc. 0-5
6 Terminologia para filas Queue: A list in which entries are removed at the head and are inserted at the tail FIFO: First-in-first-out Copyright 2012 Pearson Education, Inc. 0-6
7 Um exemplo de um organograma (árvore) Copyright 2012 Pearson Education, Inc. 0-7
8 Terminologia para uma árvore Árvore: Uma coleção de dados cujas entradas têm uma organização hierárquica Nó: Uma entrada em uma árvore Nó raiz (root): O nó no topo Terminal ou nó folha : um nó na parte inferior da árvore Copyright 2012 Pearson Education, Inc. 0-8
9 Terminologia para uma árvore (continuação) Pai: O nó imediatamente acima de um nó especificado Criança: Um nó imediatamente abaixo de um nó especificado Ancestral: Pai, pai de pai, etc.. Descendente: Filho, filho de filho, etc. Irmãos: Nós compartilhando um pai comum Copyright 2012 Pearson Education, Inc. 0-9
10 Terminologia para uma árvore (continuação) Árvore binária: uma árvore em que cada nó tem no máximo dois filhos. Profundidade: O número de nós no caminho mais longo da raiz até as folhas Copyright 2012 Pearson Education, Inc. 0-10
11 Terminologia de árvore Nó Raiz (Root) Irmãos Subárvore Nós folhas (terminais) Copyright 2012 Pearson Education, Inc. 0-11
12 Conceitos adicionais Estruturas de dados estáticas: O Tamanho e forma da estrutura de dados não altera Estruturas de dados dinâmicas: O Tamanho e forma da estrutura de dados podem mudar Ponteiros: Usados para localizar dados Copyright 2012 Pearson Education, Inc. 0-12
13 Armazenamento de Matrizes Matriz homogênea Ordem principal de linhas x Ordem principal de colunas Endereçamento Polinomial Matriz heterogênea Componentes podem ser armazenados um após o outro em um bloco contíguo Componentes podem ser armazenados em locais separados, identificados por ponteiros Copyright 2012 Pearson Education, Inc. 0-13
14 A matriz de leituras de temperatura armazenados na memória, iniciando no endereço x Endereços Células de Memória Copyright 2012 Pearson Education, Inc. 0-14
15 Uma matriz bidimensional com quatro linhas e cinco colunas armazenadas em ordem de linha principal Matriz Conceitual Linha Linha Linha Memória da Máquina Linha Linha Linha Linha Linha Entrada da 4ª coluna na 3ª linha Copyright 2012 Pearson Education, Inc. 0-15
16 Armazenar a matriz heterogênea empregado Endereços: Matriz armazenada em um bloco contíguo Componentes da Matriz armazenados em locais separados Copyright 2012 Pearson Education, Inc. 0-16
17 Armazenar listas Lista contígua: lista armazenada em uma matriz homogênea Lista encadeada: lista em que cada uma das entradas são ligadas através de ponteiros Head pointer: Ponteiro para a primeira entrada na lista NIL (NULL) pointer: Um valor padrão de "nãoponteiro" usado para indicar o final da lista Copyright 2012 Pearson Education, Inc. 0-17
18 Nomes armazenados na memória como uma lista contígua Bloco contíguo de células de memória Primeiro nome armazenado aqui Segundo nome armazenado aqui Último nome armazenado aqui Copyright 2012 Pearson Education, Inc. 0-18
19 A estrutura de uma lista encadeada Copyright 2012 Pearson Education, Inc. 0-19
20 Excluir uma entrada de uma lista encadeada Copyright 2012 Pearson Education, Inc. 0-20
21 Inserindo uma entrada em uma lista vinculada Copyright 2012 Pearson Education, Inc. 0-21
22 Armazenando Filas e Pilhas Pilhas normalmente são armazenadas como listas contíguas Filas geralmente são armazenadas como filas circulares Armazenados em um bloco contíguo no qual a primeira entrada é considerada a seguir a última entrada Evita que a fila estoure o espaço a ela alocado Copyright 2012 Pearson Education, Inc. 0-22
23 Uma pilha na memória Base da Pilha Espaço de memória reservado Entradas da Pilha Espaço disponível Ponteiro da Pilha Copyright 2012 Pearson Education, Inc. 0-23
24 Uma implementação de fila com ponteiros de início (cabeça) e fim (cauda) Ponteiro de Cabeça Ponteiro de Cauda Ponteiro de Cabeça Ponteiro de Cauda Fila Vazia Após a inserção de A, B e C Ponteiro de Cabeça Ponteiro de Cauda Ponteiro de Cabeça Ponteiro de Cauda Após remover A e inserir D Após remover B e inserir E Copyright 2012 Pearson Education, Inc. 0-24
25 Armazenamento de árvores binárias Estrutura Encadeada Cada nó = células de dados + dois ponteiros de filhos Acessado através de um ponteiro para o nó raiz Estrutura de matriz contígua A[1] = nó raiz A[2],A[3] = filhos de A[1] A[4],A[5],A[6],A[7] = filhos de A[2] e A[3] Copyright 2012 Pearson Education, Inc. 0-25
26 Uma fila circular que contém as letras P a V 1ª célula do bloco 1ª célula do bloco Ponteiro de Início Ponteiro de Fim Ponteiro de Início Ponteiro de Fim Última célula do bloco O armazenamento conceitual, com a última célula adjacente a primeira célula Última célula do bloco A fila como está realmente armazenada Copyright 2012 Pearson Education, Inc. 0-26
27 A estrutura de um nó em uma árvore binária Células contendo os Dados Ponteiro do filho da esquerda Ponteiro do filho da direita Copyright 2012 Pearson Education, Inc. 0-27
28 A organização conceitual e real de uma árvore binária, usando um sistema de armazenamento encadeado Árvore Conceitual Organização de armazenamento real Ponteiro p/raiz Copyright 2012 Pearson Education, Inc. 0-28
29 Uma árvore armazenada sem ponteiros Árvore Conceitual Organização de armazenamento real Ponteiro p/raiz Nó raiz Nós no 2º nível da árvore Nós no 3º nível da árvore Copyright 2012 Pearson Education, Inc. 0-29
30 Uma árvore esparsa, desbalanceada, mostrada em sua forma conceitual e como ele seria armazenada sem ponteiros Árvore Conceitual Organização de armazenamento real Raiz 2º Nível 3º Nível 4º Nível Copyright 2012 Pearson Education, Inc. 0-30
31 Manipulação de estruturas de dados Idealmente, uma estrutura de dados deve ser manipulada unicamente por procedimentos pré-definidos. Exemplo: Uma pilha tipicamente precisa de pelo menos os procedimentos push e pop A estrutura de dados juntamente com esses procedimentos constitui uma ferramenta abstrata completa. Copyright 2012 Pearson Education, Inc. 0-31
32 Tipo de dados definido pelo usuário Um modelo para uma estrutura heterogênea Exemplo: define type EmployeeType to be {char } int real Name[25]; Age; SkillRating; Copyright 2012 Pearson Education, Inc. 0-32
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
Leia maisFilas 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 maisConceitos. 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 maisPesquisa em Memória Primária. Prof. Jonas Potros
Pesquisa em Memória Primária Prof. Jonas Potros Procedimento para Inserir na Árvore Binária Critérios: Atingir um ponteiro nulo em um processo de pesquisa significa uma pesquisa sem sucesso. O ponteiro
Leia maisÁrvores B. Prof. Flávio Humberto Cabral Nunes
Árvores B Prof. Flávio Humberto Cabral Nunes Conteúdo 1. Introdução 2. Busca 3. Inserção 4. Remoção 5. B* 6. B+ Capítulo: 8 (APOSTILA). Introdução Em muitas aplicações, a tabela considerada é muito grande
Leia maisIntercalação de vários arquivos. Estrutura de Dados II Prof Jairo Francisco de Souza
Intercalação de vários arquivos Estrutura de Dados II Prof Jairo Francisco de Souza Arquivos Um conjunto de registros que caracteriza uma classe de entidades pode ser mantido em memória principal, quando
Leia maisEstruturas 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 maisDisciplina: Arquitetura de Computadores
Disciplina: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof a. Carla Katarina de Monteiro Marques UERN Introdução Responsável por: Processamento e execução de programas armazenados na
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Slide 1 Memória Virtual os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida O PDP-1 funcionava com uma memória de 4096 palavras
Leia maisAlgoritmos 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 maisAlgoritmos e Estruturas de Dados II IEC013
Algoritmos e Estruturas de Dados II IEC013 Linguagem C -Vetores e Matrizes- Prof. César Melo Todos os créditos ao Prof. Leandro Galvão Variáveis Compostas São um conjunto de variáveis identificadas por
Leia maisMicrocontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk
Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso
Leia maisEstruturas de Dados com Jogos. Capítulo 8 Árvores
Estruturas de Dados com Jogos Capítulo 8 Árvores 1 Seus Objetivos neste Capítulo 2 Entender o conceito, a nomenclatura e a representação usual da estrutura de armazenamento denominada Árvore, e de um tipo
Leia maisESTRUTURAS DE DADOS I. Notas de Aula. Prof. Dr. Gilberto Nakamiti
ESTRUTURAS DE DADOS I Notas de Aula 1 SUMÁRIO 1. INTRODUÇÃO... 2 1.1 Array (vetores)... 2 2. BUSCA DE ELEMENTOS... 3 2.1 Busca Seqüencial... 3 2.2 Busca Binária... 3 2.3 Busca Indexada... 3 2.4 Busca Hash...
Leia maisDeclarações. Variáveis e Classe de Memória
Declarações Variáveis e Classe de Memória Objetivo Aprender: a forma geral de DECLARAÇÕES de VARIÁVEIS em C a noção de CLASSE de MEMÓRIA associada a uma VARIÁVEL 2 Variáveis VARIÁVEIS são abstrações de
Leia maisÁrvores. ! utilizada em muitas aplicações. ! modela uma hierarquia entre elementos. ! O conceito de árvores está diretamente ligado à recursão
Árvores 1 Árvores! utilizada em muitas aplicações! modela uma hierarquia entre elementos! árvore genealógica! diagrama hierárquico de uma organização! modelagem de algoritmos! O conceito de árvores está
Leia maisAula 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 maisEstruturas de Dados Aula 8: Tipos Abstratos de Dados 30/03/2011
Estruturas de Dados Aula 8: Tipos Abstratos de Dados 30/03/2011 Variação de implementação Há diferentes implementações possíveis para o mesmo tipo de dado Todas definem o mesmo domínio e não mudam o significado
Leia maisAnálise Sintática II. Eduardo Ferreira dos Santos. Outubro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 34
Análise Sintática II Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Outubro, 2016 1 / 34 Sumário 1 Introdução 2 Ambiguidade 3 Análise sintática descendente 4
Leia maisUniversidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas
Leia maisINF 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
Leia mais4. ARQUITETURA DE UM SISTEMA
4. ARQUITETURA DE UM SISTEMA PARA REFORÇO EM EAD BASEADO EM ONTOLOGIAS Neste capítulo será mostrada a arquitetura conceitual do sistema que tem o objetivo de fornecer, de forma automática, reforço de aprendizagem
Leia maisAula 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 maisTipos Abstratos de Dados. Estrutura de Dados
Tipos Abstratos de Dados Tipo Abstrato de Dados ou TAD Idéia principal: desvincular o tipo de dado (valores e operações) de sua implementação: O que o tipo faz e não como ele faz! Vantagens da desvinculação:
Leia maisÍNDICE. Árvores (Definição e terminologias) 2. Árvores Binárias 4. Armazenamento de Árvores Binárias 5. Aplicação 6. Como percorrê-la 6.
Árvores Seminário de Matemática Discreta Componentes: Rogério Caetano Cardoso, Nino Prates Arcanjo, Leonardo Duarte Vencioneck, Vinicius Maia. Professor: Leandro Colombi Resendo Curso: Bacharelado em Sistema
Leia maisO conjunto de registros pode ser: Um vetor de registros Uma lista encadeada Uma árvore Etc.
Método de Busca O problema da busca (ou pesquisa) - Dado um conjunto de elementos, onde cada um é identificado por uma chave, o objetivo da busca é localizar, nesse conjunto, o elemento que corresponde
Leia maisNotas da Aula 7 - Fundamentos de Sistemas Operacionais
Notas da Aula 7 - Fundamentos de Sistemas Operacionais 1. Organização de um Processo em Memória Quando um processo é criado, o SO aloca uma porção da memória física da máquina para a criação do espaço
Leia maisÁrvores de Pesquisa (Parte I)
Árvores de Pesquisa (Parte I) Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aulas 20 e 21 Algoritmos e Estruturas de Dados I Pesquisa em Memória Primária Introdução - Conceitos Básicos Pesquisa
Leia maisVariáveis, Tipos de Dados e Operadores
! Variáveis, Tipos de Dados e Operadores Engenharias Informática Aplicada 2.o sem/2013 Profa Suely (e-mail: smaoki@yahoo.com) VARIÁVEL VARIÁVEL É um local lógico, ligado a um endereço físico da memória
Leia maisCES-30 Técnicas de Banco de Dados - BD e CE-240 Projeto de Sistema de BD
CURSO DE GRADUAÇÃO e DE PÓS-GRADUAÇÃO DO ITA 1º SEMESTRE 2002 CES-30 Técnicas de Banco de Dados - BD e CE-240 Projeto de Sistema de BD Conceitos de Banco de Dados Hierárquico CES-30 / CE-240 - A. M. Cunha
Leia maisMemórias. Memórias: Utilização:
1 : São dispositivos que armazenam informações codificadas digitalmente que podem representar números, letras, caracteres quaisquer, comandos de operações, endereços ou ainda qualquer outro tipo de dado.
Leia maisExemplo Árvore Binária
Árvores Rohit Gheyi Para entradas realmente grandes, o acesso linear O(n) de listas é proibi9vo Estrutura de dados não linear, cujas operações tem custos em geral O(log n) 1 2 Exemplo Como seria pesquisar
Leia maisLinguagens de Programação. Tipos. Carlos Bazilio
Linguagens de Programação Tipos Carlos Bazilio bazilio@ic.uff.br http://www.ic.uff.br/~bazilio/cursos/lp Definições Tipos de dados primitivos: tipos de dados que não são definidos em termos de outros tipos
Leia mais2. A figura a seguir ilustra várias relações binárias em Quais são funções? Dentre as que são funções, quais as sobrejetivas? E quais as injetivas?
Seção 4.3 Funções 199 Exercícios 4.3 1. A figura a seguir representa uma função. a. Qual seu domínio? Qual seu contradomínio? Qual o conjunto imagem? b. Qual a imagem de 5? E de 8? c. Quais as pré-imagens
Leia maisProf. Leonardo Augusto Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Aula 2 Estrutura de um processador Prof. Leonardo Augusto Casillo Arquitetura de Von Neumann: Conceito de programa armazenado; Dados
Leia maisÁrvores Parte 1. Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos
Árvores Parte 1 Aleardo Manacero Jr. DCCE/UNESP Grupo de Sistemas Paralelos e Distribuídos Árvores uma introdução As listas apresentadas na aula anterior formam um conjunto de TADs extremamente importante
Leia mais1.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
Leia maisEDUARDO DA SILVA SARDÃO 0981/00-4 IGOR RODRIGO MACHADO DE MENEZES 1422/98-1 TRABALHO FINAL ÁRVORES B+
1 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA - CIÊNCIA DA COMPUTAÇÃO DEPARTAMENTO DE INFORMÁTICA APLICADA CLASSIFICAÇÃO E PESQUISA DE DADOS INF01124 EDUARDO DA SILVA SARDÃO 0981/00-4
Leia maisComo publicar páginas Web no GoogleSites
1 Curso de Formação de Professores em Tecnologia de Informação e de Comunicação Acessível PASSO 1 ACESSE O ENDEREÇO DO GOOGLE SITES Como publicar páginas Web no GoogleSites Ao criar sua conta no Gmail,
Leia maisÁrvore Vermelho-Preta. Estrutura de Dados II Jairo Francisco de Souza
Árvore Vermelho-Preta Estrutura de Dados II Jairo Francisco de Souza Introdução As árvores Vermelho-preto são árvores binárias de busca Também conhecidas como Rubro-negras ou Red-Black Trees Foram inventadas
Leia maisADT - Árvores. ADT Árvores Definição
ADT - Árvores Outro tipo abstrato de dados (ADT) é a árvore. Como acontece com as listas, a utilização das árvores será basicamente como estruturas de dados ao invés de tipos de dados. Ou seja, o foco
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 02: Alocação Dinâmica de Memória Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes
Leia maisProf. Kleber R. Rovai
Msn: klrovai@hotmail.com E-mail: Skype: klrovai 2 1 Programa: sequência de instruções com diferentes fluxos de execução comandos condicionais e interativos (entidade passiva); Processo: um programa em
Leia maisMemórias Parte 1. SEL-0415 Introdução à Organização de Computadores. Aula 4. Prof. Dr. Marcelo Andrade da Costa Vieira
Departamento de Engenharia Elétrica - EESC-USP SEL-0415 Introdução à Organização de Computadores Memórias Parte 1 Aula 4 Prof. Dr. Marcelo Andrade da Costa Vieira Memória Semicondutora Elemento Básico
Leia maisGerência de memória III
Gerência de memória III Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 45 Sumário 1 Memória Virtual Segmentação Paginação 2 Alocação de páginas
Leia maisEAD Árvore - representação usando listas ligadas
4.1. Definição É uma árvore binária em que os seus nodos têm associado uma chave, que - determina a sua posição de colocação na árvore e - obedece às seguintes regras: a chave de um nodo é - maior do que
Leia maisTrabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa:
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Ciências de Computação Disciplina de Organização de Arquivos Profa. Dra. Cristina Dutra de Aguiar Ciferri Trabalho
Leia maisESTRUTURA 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Índice. Capítulo 3 Estrutura de Dados sequencial com armazenamento não sequencial
Índice i Índice Capítulo 3 Estrutura de Dados sequencial com armazenamento não sequencial 1. Listas ligadas armazenamento não sequencial... 1 1.1. Nodos e ligações... 1 1.2. Início duma lista... 2 1.3.
Leia mais- 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:
Leia maisTipos Abstratos de Dados
Tipos Abstratos de Dados Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Definição de Tipos Abstratos de Dados Exemplos de TADs Implementação de TADs Implementação em C Exemplo
Leia maisFigura 1: Esboço do programa Quicksort. a) Desenhe a árvore de ativação quando os números 9, 8, 7, 6, 5, 4, 3, 2, 1 são ordenados.
Universidade Estadual de Mato Grosso do Sul Ciência da Computação - Compiladores Prof. André Chastel Lima Exercícios do capítulo 7 do livro Compiladores - Princípios, técnicas e ferramentas 2 o edição.
Leia maisAlgoritmos e Programação II. Coleções. Coleções. Baseado no material do Prof. Julio
Algoritmos e Programação II Baseado no material do Prof. Julio Coleções Java disponibiliza classes que facilitam o agrupamento e processamento de objetos em conjuntos: Coleções (Java Collections Framework).
Leia maisAlgoritmos e Estrutura de Dados III. Árvores
Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas
Leia maisORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados
ORGANIZANDO DADOS E INFORMAÇÕES: Bancos de Dados Gestão da Informação (07182) Instituto de Ciências Econ., Adm. e Contábeis (ICEAC) Universidade Federal do Rio Grande (FURG) Gestão de Dados As organizações
Leia maisÁrvore Binária de Busca
Árvore Binária de Busca 319 Árvore Binária de Busca! construída de tal forma que, para cada nó:! nós com chaves menores estão na sub-árvore esquerda! nós com chaves maiores (ou iguais) estão na subárvore
Leia maisAula 15 Árvores Digitais / Trie
MC3305 Algoritmos e Estruturas de Dados II Aula 15 Árvores Digitais / Trie Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2015 1 ABBs Problema de busca geral Conjunto de chaves (S). Elemento x a
Leia maisAnálise e Síntese de Algoritmos. Revisão CLRS, Cap. 7-10
Análise e Síntese de Algoritmos Revisão CLRS, Cap. 7-10 Contexto Revisão Algoritmos e complexidade Notação Fundamentos: somatórios, recorrências, etc. Exemplos de algoritmos Ordenação Procura Selecção
Leia maisIntrodução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Leia maisQuestão 1. Nome para o arquivo fonte questao1.c
Questão 1 Nome para o arquivo fonte questao1.c Construa um programa, na linguagem de programação C, que receba através da entrada padrão um número natural, o qual indicará quantas operações de divisão
Leia maisAlocaçã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 maisDesenvolvimento Web. JavaScript aula IV Acesso a documentos com Document Object Model (DOM) Professor: Bruno E. G. Gomes
INSTITUTO FEDERAL DE EDUCAÇÃO CIÊNCIA E TECNOLOGIA CURSO TÉCNICO INTEGRADO EM INFORMÁTICA CAMPUS CURRAIS NOVOS Desenvolvimento Web JavaScript aula IV Acesso a documentos com Document Object Model (DOM)
Leia maisCAPÍTULO 5 LINGUAGEM LEGAL E EXTENSÕES PROPOSTAS
CAPÍTULO 5 LINGUAGEM LEGAL E EXTENSÕES PROPOSTAS Os operadores de manipulação de campos geográficos implementados neste trabalho tiveram como ambiente de desenvolvimento a Linguagem Espacial para Geoprocessamento
Leia maisOrganização e Arquitetura de Computadores I
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Circuitos Lógicos Sequenciais (Parte
Leia maisEstrutura de Dados Pilha (Stack)
Estrutura de Dados Pilha (Stack) Estrutura de Dados que corresponde a uma lista sequencial com a propriedade seguinte: LIFO O primeiro elemento a entrar é o último a sair ( Last in First Out ) Operações
Leia maisBCC202 - Estrutura de Dados I
BCC202 - Estrutura de Dados I Aula 03: Tipos Abstratos de Dados (TADs) Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes
Leia maisEAD Árvore árvore binária
EAD Árvore árvore binária - Uma árvore binária é um conjunto finito de elementos (nodos) que pode ser vazio ou particionado em três subconjuntos: - raiz da árvore (elemento inicial, que é único); - subárvore
Leia maisCard Tree Creator. Um Sistema para a criação de árvores de cartões.
Card Tree Creator Um Sistema para a criação de árvores de cartões. 1. Introdução Card Tree Creator é um sistema escrito em linguagem JAVA que tem por objetivo fornecer uma ferramenta para a criação de
Leia maisApostila 01 Fundamentação da Teoria da Computação e Linguagens Formais
Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e
Leia maisÁrvore Binária de Busca Ótima
MAC 5710 - Estruturas de Dados - 2008 Referência bibliográfica Os slides sobre este assunto são parcialmente baseados nas seções sobre árvore binária de busca ótima do capítulo 4 do livro N. Wirth. Algorithms
Leia maisTransformação de Chave - Hashing
UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Transformação de Chave (Hashing) e Gomes da Costa yandre@din.uem.br 1 Transformações de Chave, ou Tabela Hash, ou Tabelas de Dispersão; Hashing
Leia maisTópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06
Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação COMO UM PROGRAMA ESCRITO
Leia maisEAD Fila. - algumas operações realizam-se na frente/cabeça e outras na cauda da Fila
EAD Fila - os seus elementos são processados por ordem de chegada: - o primeiro elemento a entrar na Fila é o primeiro a sair - FIFO ( First In First Out ). - algumas operações realizam-se na frente/cabeça
Leia maisMemória Interna. Prof. Leonardo Barreto Campos 1
Memória Interna Prof. Leonardo Barreto Campos 1 Sumário Introdução; Sistema de Memória de Computadores; Hierarquia de Memória; Memória Principal de Semicondutores; Memória Cache; Organizações das Memórias
Leia maisA linguagem SQL
SQL 2008.1 A linguagem SQL SQL - Structured Query Language. Foi definida nos laboratórios de pesquisa da IBM em San Jose, California, em 1974. Teve seus fundamentos no modelo relacional Sua primeira versão
Leia maisRoteiro 8 Comandos SQL parte 2: Comandos DDL
Roteiro 8 Comandos SQL parte 2: Comandos DDL Objetivos: Adicionar chaves primárias em tabelas de dados; Utilizar comandos DDL para alteração de estruturas de bancos de dados Neste roteiro são utilizados
Leia maisSolucionador de circuitos lógicos em C++
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE ENGENHARIA DE COMPUTAÇÃO E AUTOMAÇÃO DCA Solucionador de circuitos lógicos em C++ Camila de Oliveira Silva, 2009028716 Victor Neves Nogueira,
Leia maisGerenciamento de Memória
Gerenciamento de Memória Conceitos básicos Swapping Alocação contígua Paginação Segmentação Segmentação com paginação Atribuição de endereços (ligação) de código e dados na memória A atribuição de endereços
Leia maisAlgoritmos e Estrutura de Dados II
Universidade Federal do Vale do São Francisco Algoritmos e Estrutura de Dados II Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Ementa Árvores B, grafos e tabelas de hash: alocação
Leia maisJavaScript (Elementos de Programação e Programação Básica)
Linguagem de Programação para Web JavaScript (Elementos de Programação e Programação Básica) Prof. Mauro Lopes 1 Objetivos Iniciaremos aqui o nosso estudo sobre a Linguagem de Programação JavaScript. Apresentaremos
Leia maisProfessor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP. Memórias de Dados e de Programa
4. Memórias de Dados e de Programa Professor: Vlademir de Oliveira Disciplina: Microcontroladores e DSP 4.1 Memórias Semicondutoras Algumas definições Célula: Dispositivo de armazenamento de 1 bit. Palavra:
Leia maisMatemática Discreta 10
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta 10 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br - www.univasf.edu.br/~jorge.cavalcanti 1 Muitas
Leia maisTECNOLOGIA 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 maisBANCO DE DADOS WEB AULA 12. manipulação de dados atualização e exclusão de registros. professor Luciano Roberto Rocha.
BANCO DE DADOS WEB AULA 12 manipulação de dados atualização e exclusão de registros professor Luciano Roberto Rocha www.lrocha.com Atualização de dados A modificação dos dados armazenados no banco de dados
Leia maisSistema de Arquivos. Ciclo 5 AT1. Prof. Hermes Senger / Hélio Crestana Guardia
Sistema de Arquivos Ciclo 5 AT1 Prof. Hermes Senger / Hélio Crestana Guardia Referência: Deitel Cap. 13 Nota O presente material foi elaborado com base no material didático do livro Sistemas Operacionais,
Leia maisINF1007 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 15
INF1007 - PROGRAMAÇÃO II LISTA DE EXERCÍCIOS 15 1. Um número racional é expresso por dois inteiros: um numerador e um denominador (este último diferente de zero!). Implemente um TAD para representar números
Leia maisApostila de Excel 2007
1 Apostila de Excel 2007 Índice 1-Guias do excel... 3 1.1 Início... 3 1.2 Inserir... 4 1.3 Layout de Página... 5 1.4 Formulas... 6 1.5 Dados... 7 1.6 Revisão... 8 1.7 Exibição... 9 2 Conceito de células...
Leia maisTipos de Dados, Tipos Abstratos de Dados Estruturas de Dados
Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipo de dados, tipo abstrato de dados, estruturas de dados Termos parecidos, mas com significados diferentes Tipo de dado Em linguagens de programação
Leia maisProgramação Básica. Estrutura de um algoritmo
Programação Básica Estrutura de um algoritmo Código-fonte Como vimos na aula anterior um algoritmo pode ser representado usando um fluxograma Um algoritmo pode também ser representado usando texto Esse
Leia maisNo. de bits. O primeiro IBM PC foi construído com o 8088 (versão de 8 bits do 8086).
Cap2.1 2. Arquitetura do microprocessador 8086 2.1 A família Intel iapx86 (ou 80X86) Processador Co-proc. Ano de introdução No. de bits No. de transistores Velocidade (MHz) 4004-1971 4 2.205-8008 - 1972
Leia maisSISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios
SISTEMAS OPERACIONAIS INF09344 - Sistemas Operacionais / INF02780 - Sistemas Operacionais / INF02828 - Sistemas de Programação II Prof a. Roberta Lima Gomes (soufes@gmail.com) 3ª. Lista de Exercícios Data
Leia maisA arquitectura IA32. A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador.
A arquitectura IA32 A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador. Tamanho da palavra Número de registos visíveis Número de operandos Endereçamento
Leia maisBem-vindo ao tópico sobre a ferramenta Importar do Excel.
Bem-vindo ao tópico sobre a ferramenta Importar do Excel. 1 Neste tópico, você verá como importar cadastros de parceiros de negócios, dados do cadastro do item e listas de preços usando a ferramenta Importar
Leia maisResolução de problemas por meio de busca. Prof. Pedro Luiz Santos Serra
Resolução de problemas por meio de busca Prof. Pedro Luiz Santos Serra Agentes de resolução de problemas Agente: É um elemento qualquer capaz de perceber seu ambiente por meio de sensores e de agir sobre
Leia maisESTRUTURAS DE DADOS II MSc. Daniele Carvalho Oliveira
ESTRUTURAS DE DADOS II MSc. Daniele Carvalho Oliveira ÁRVORES ED2: MSc. Daniele Oliveira 2 Introdução Filas, pilhas» Estruturas Lineares Um dos exemplos mais significativos de estruturas não-lineares são
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código
Leia mais//Declaração do TAD pilha. // As operações definidas para esse tipo são criar() push() pop() destroi() // typedef struct pilha TPilha;
Declaração do TAD pilha. As operações definidas para esse tipo são criar() push() pop() destroi() typedef struct pilha TPilha; cria a pilha e retorna o ponteiro para o tipo Pilha TPilha* criar(void); Empilha
Leia maisDISCIPLINA: TELEPROCESSAMENTO E REDES CURSO: CIÊNCIA DA COMPUTAÇÃO 6. SEMESTRE PROFESSOR: ANTONIO P. NASCIMENTO FILHO
DISCIPLINA: TELEPROCESSAMENTO E REDES CURSO: CIÊNCIA DA COMPUTAÇÃO 6. SEMESTRE PROFESSOR: ANTONIO P. NASCIMENTO FILHO Nome: LISTA 3 Máscara de sub-rede 1 Objetivos: Este exercício se concentra nas máscaras
Leia mais