push (c) pop () retorna-se c topo b a topo Figura 10.1: Funcionamento da pilha.
|
|
- Cláudia Barros Palma
- 8 Há anos
- Visualizações:
Transcrição
1 11. Pilhs W. Celes e J. L. Rngel Um ds estruturs de ddos mis simples é pilh. Possivelmente por ess rzão, é estrutur de ddos mis utilizd em progrmção, sendo inclusive implementd diretmente pelo hrdwre d miori ds máquins moderns. A idéi fundmentl d pilh é que todo o cesso seus elementos é feito trvés do seu. Assim, qundo um elemento novo é introduzido n pilh, pss ser o elemento do, e o único elemento que pode ser removido d pilh é o do. Isto fz com que os elementos d pilh sejm retirdos n ordem invers à ordem em que form introduzidos: o primeiro que si é o último que entrou ( sigl LIFO lst in, first out é usd pr descrever est estrtégi). Pr entendermos o funcionmento de um estrutur de pilh, podemos fzer um nlogi com um pilh de prtos. Se quisermos dicionr um prto n pilh, o colocmos no. Pr pegr um prto d pilh, retirmos o do. Assim, temos que retirr o prto do pr ter cesso o próximo prto. A estrutur de pilh funcion de mneir nálog. Cd novo elemento é inserido no e só temos cesso o elemento do d pilh. Existem dus operções ásics que devem ser implementds num estrutur de pilh: operção pr empilhr um novo elemento, inserindo-o no, e operção pr desempilhr um elemento, removendo-o do. É comum nos referirmos esss dus operções pelos termos em inglês push (empilhr) e pop (desempilhr). A Figur 10.1 ilustr o funcionmento conceitul de um pilh. push () push () push (c) pop () retorn-se c push (d) pop () retorn-se d c d Figur 10.1: Funcionmento d pilh. O exemplo de utilizção de pilh mis próximo é própri pilh de execução d lingugem C. As vriáveis locis ds funções são disposts num pilh e um função só tem cesso às vriáveis que estão no (não é possível cessr s vriáveis d função locis às outrs funções). Há váris implementções possíveis de um pilh, que se distinguem pel nturez dos seus elementos, pel mneir como os elementos são rmzendos e pels operções disponíveis pr o trtmento d pilh. Estruturs de Ddos PUC-Rio 10-1
2 11.1. Interfce do tipo pilh Neste cpítulo, considerremos dus implementções de pilh: usndo vetor e usndo list encded. Pr simplificr exposição, considerremos um pilh que rmzen vlores reis. Independente d estrtégi de implementção, podemos definir interfce do tipo strto que represent um estrutur de pilh. A interfce é compost pels operções que estrão disponiilizds pr mnipulr e cessr s informções d pilh. Neste exemplo, vmos considerr implementção de cinco operções: crir um estrutur de pilh; inserir um elemento no (push); remover o elemento do (pop); verificr se pilh está vzi; lierr estrutur de pilh. O rquivo pilh.h, que represent interfce do tipo, pode conter o seguinte código: typedef struct pilh Pilh; Pilh* cri (void); void push (Pilh* p, flot v); flot pop (Pilh* p); int vzi (Pilh* p); void lier (Pilh* p); A função cri loc dinmicmente estrutur d pilh, iniciliz seus cmpos e retorn seu ponteiro; s funções push e pop inserem e retirm, respectivmente, um vlor rel n pilh; função vzi inform se pilh está ou não vzi; e função lier destrói pilh, lierndo tod memóri usd pel estrutur Implementção de pilh com vetor Em plicções computcionis que precism de um estrutur de pilh, é comum sermos de ntemão o número máximo de elementos que podem estr rmzendos simultnemente n pilh, isto é, estrutur d pilh tem um limite conhecido. Nestes csos, implementção d pilh pode ser feit usndo um vetor. A implementção com vetor é stnte simples. Devemos ter um vetor (vet) pr rmzenr os elementos d pilh. Os elementos inseridos ocupm s primeirs posições do vetor. Dest form, se temos n elementos rmzendos n pilh, o elemento vet[n-1] represent o elemento do. A estrutur que represent o tipo pilh deve, portnto, ser compost pelo vetor e pelo número de elementos rmzendos. #define MAX 50 struct pilh int n; flot vet[max]; ; Estruturs de Ddos PUC-Rio 10-2
3 A função pr crir pilh loc dinmicmente ess estrutur e iniciliz pilh como sendo vzi, isto é, com o número de elementos igul zero. Pilh* cri (void) Pilh* p = (Pilh*) mlloc(sizeof(pilh)); p->n = 0; /* iniciliz com zero elementos */ return p; Pr inserir um elemento n pilh, usmos próxim posição livre do vetor. Devemos ind ssegurr que exist espço pr inserção do novo elemento, tendo em vist que trt-se de um vetor com dimensão fix. void push (Pilh* p, flot v) if (p->n == MAX) /* cpcidde esgotd */ printf("cpcidde d pilh estourou.\n"); exit(1); /* ort progrm */ /* insere elemento n próxim posição livre */ p->vet[p->n] = v; p->n++; A função pop retir o elemento do d pilh, fornecendo seu vlor como retorno. Podemos tmém verificr se pilh está ou não vzi. flot pop (Pilh* p) flot v; if (vzi(p)) printf("pilh vzi.\n"); exit(1); /* ort progrm */ /* retir elemento do */ v = p->vet[p->n-1]; p->n--; return v; A função que verific se pilh está vzi pode ser dd por: int vzi (Pilh* p) return (p->n == 0); Finlmente, função pr lierr memóri locd pel pilh pode ser: void lier (Pilh* p) free(p); Implementção de pilh com list Qundo o número máximo de elementos que serão rmzendos n pilh não é conhecido, devemos implementr pilh usndo um estrutur de ddos dinâmic, no cso, empregndo um list encded. Os elementos são rmzendos n list e pilh pode ser representd simplesmente por um ponteiro pr o primeiro nó d list. Estruturs de Ddos PUC-Rio 10-3
4 O nó d list pr rmzenr vlores reis pode ser ddo por: struct no flot info; struct no* prox; ; typedef struct no No; A estrutur d pilh é então simplesmente: struct pilh No* prim; ; A função cri loc estrutur d pilh e iniciliz list como sendo vzi. Pilh* cri (void) Pilh* p = (Pilh*) mlloc(sizeof(pilh)); p->prim = NULL; return p; O primeiro elemento d list represent o d pilh. Cd novo elemento é inserido no início d list e, conseqüentemente, sempre que solicitdo, retirmos o elemento tmém do início d list. Dest form, precismos de dus funções uxilires d list: pr inserir no início e pr remover do início. Ams s funções retornm o novo primeiro nó d list. /* função uxilir: insere no início */ No* ins_ini (No* l, flot v) No* p = (No*) mlloc(sizeof(no)); p->info = v; p->prox = l; return p; /* função uxilir: retir do início */ No* ret_ini (No* l) No* p = l->prox; free(l); return p; As funções que mnipulm pilh fzem uso desss funções de list: void push (Pilh* p, flot v) p->prim = ins_ini(p->prim,v); flot pop (Pilh* p) flot v; if (vzi(p)) printf("pilh vzi.\n"); exit(1); /* ort progrm */ v = p->prim->info; p->prim = ret_ini(p->prim); return v; Estruturs de Ddos PUC-Rio 10-4
5 A pilh estrá vzi se list estiver vzi: int vzi (Pilh* p) return (p->prim==null); Por fim, função que lier pilh deve ntes lierr todos os elementos d list. void lier (Pilh* p) No* q = p->prim; while (q!=null) No* t = q->prox; free(q); q = t; free(p); A rigor, pel definição d estrutur de pilh, só temos cesso o elemento do. No entnto, pr testr o código, pode ser útil implementrmos um função que imprim os vlores rmzendos n pilh. Os códigos ixo ilustrm implementção dess função ns dus versões de pilh (vetor e list). A ordem de impressão dotd é do pr se. /* imprime: versão com vetor */ void imprime (Pilh* p) int i; for (i=p->n-1; i>=0; i--) printf("%f\n",p->vet[i]); /* imprime: versão com list */ void imprime (Pilh* p) No* q; for (q=p->prim; q!=null; q=q->prox) printf("%f\n",q->info); Exemplo de uso: clculdor pós-fixd Um om exemplo de plicção de pilh é o funcionmento ds clculdors d HP (Hewlett-Pckrd). Els trlhm com expressões pós-fixds, então pr vlirmos um expressão como (1-2)*(4+5) podemos digitr *. O funcionmento desss clculdors é muito simples. Cd operndo é empilhdo num pilh de vlores. Qundo se encontr um operdor, desempilh-se o número proprido de operndos (dois pr operdores inários e um pr operdores unários), reliz-se operção devid e empilh-se o resultdo. Deste modo, n expressão cim, são empilhdos os vlores 1 e 2. Qundo prece o operdor -, 1 e 2 são desempilhdos e o resultdo d operção, no cso -1 (= 1-2), é colocdo no d pilh. A seguir, 4 e 5 são empilhdos. O operdor seguinte, +, desempilh o 4 e o 5 e empilh o resultdo d som, 9. Nest hor, estão n pilh os dois resultdos prciis, -1 n se e 9 no. O operdor *, então, desempilh os dois e coloc -9 (= -1 * 9) no d pilh. Estruturs de Ddos PUC-Rio 10-5
6 Como exemplo de plicção de um estrutur de pilh, vmos implementr um clculdor pós-fixd. El deve ter um pilh de vlores reis pr representr os operndos. Pr enriquecer implementção, vmos considerr que o formto com que os vlores d pilh são impressos sej um ddo dicionl ssocido à clculdor. Esse formto pode, por exemplo, ser pssdo qundo d crição d clculdor. Pr representr interfce exportd pel clculdor, podemos crir o rquivo clc.h: /* Arquivo que define interfce d clculdor */ typedef struct clc Clc; /* funções exportds */ Clc* cri_clc (chr* f); void operndo (Clc* c, flot v); void operdor (Clc* c, chr op); void lier_clc (Clc* c); Esss funções utilizm s funções mostrds cim, independente d implementção usd n pilh (vetor ou list). O tipo que represent clculdor pode ser ddo por: struct clc chr f[21]; /* formto pr impressão */ Pilh* p; /* pilh de operndos */ ; A função cri recee como prâmetro de entrd um cdei de crcteres com o formto que será utilizdo pel clculdor pr imprimir os vlores. Ess função cri um clculdor inicilmente sem operndos n pilh. Clc* cri_clc (chr* formto) Clc* c = (Clc*) mlloc(sizeof(clc)); strcpy(c->f,formto); c->p = cri(); /* cri pilh vzi */ return c; A função operndo coloc no d pilh o vlor pssdo como prâmetro. A função operdor retir os dois vlores do d pilh (só considerremos operdores inários), efetu operção correspondente e coloc o resultdo no d pilh. As operções válids são: '+' pr somr, '-' pr sutrir, '*' pr multiplicr e '/' pr dividir. Se não existirem operndos n pilh, considerremos que seus vlores são zero. Tnto função operndo qunto função operdor imprimem, utilizndo o formto especificdo n função cri, o novo vlor do d pilh. void operndo (Clc* c, flot v) /* empilh operndo */ push(c->p,v); /* imprime d pilh */ printf(c->f,v); Estruturs de Ddos PUC-Rio 10-6
7 void operdor (Clc* c, chr op) flot v1, v2, v; /* desempilh operndos */ if (vzi(c->p)) v2 = 0.0; else v2 = pop(c->p); if (vzi(c->p)) v1 = 0.0; else v1 = pop(c->p); /* fz operção */ switch (op) cse '+': v = v1+v2; rek; cse '-': v = v1-v2; rek; cse '*': v = v1*v2; rek; cse '/': v = v1/v2; rek; /* empilh resultdo */ push(c->p,v); /* imprime d pilh */ printf(c->f,v); Por fim, função pr lierr memóri usd pel clculdor lier pilh de operndos e estrutur d clculdor. void lier_clc (Clc* c) lier(c->p); free(c); Um progrm cliente que fç uso d clculdor é mostrdo ixo: /* Progrm pr ler expressão e chmr funções d clculdor */ #include <stdio.h> #include "clc.h" int min (void) chr c; flot v; Clc* clc; /* cri clculdor com precisão de impressão de dus css decimis */ clc = cri_clc("%.2f\n"); do /* le proximo crctere no rnco */ scnf(" %c",&c); /* verific se e' operdor vlido */ if (c=='+' c=='-' c=='*' c=='/') operdor(clc,c); /* devolve crctere lido e tent ler número */ else ungetc(c,stdin); if (scnf("%f",&v) == 1) operndo(clc,v); Estruturs de Ddos PUC-Rio 10-7
8 while (c!='q'); lier_clc(clc); return 0; Esse progrm cliente lê os ddos fornecidos pelo usuário e oper clculdor. Pr tnto, o progrm lê um crctere e verific se é um operdor válido. Em cso negtivo, o progrm devolve o crctere lido pr o uffer de leitur, trvés d função ungetc, e tent ler um operndo. O usuário finliz execução do progrm digitndo q. Se executdo, e considerndo-se s expressões digitds pelo usuário mostrds ixo, esse progrm teri como síd: * + digitdo pelo usuário / digitdo pelo usuário q digitdo pelo usuário Exercício: Estend funcionlidde d clculdor incluindo novos operdores unários e inários (sugestão: ~ como menos unário, # como riz qudrd, ^ como exponencição). Estruturs de Ddos PUC-Rio 10-8
Programação II. Pilhas (stacks) Bruno Feijó Dept. de Informática, PUC-Rio
Progrmção II Pilhs (stcks) Bruno Feijó Dept. de Informátic, PUC-Rio Pilh Novo elemento é inserido no e cesso é pens o... como num pilh de prtos O único elemento que pode ser cessdo e removido é o do N
Leia maisAlocação sequencial - Pilhas
Alocção seqüencil - pilhs Alocção sequencil - Pilhs Pilhs A estrutur de ddos Pilh é bstnte intuitiv. A nlogi é um pilh de prtos. Se quisermos usr um pilh de prtos com máxim segurnç, devemos inserir um
Leia maisEstruturas 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 maisPOLINÔMIOS. Definição: Um polinômio de grau n é uma função que pode ser escrita na forma. n em que cada a i é um número complexo (ou
POLINÔMIOS Definição: Um polinômio de gru n é um função que pode ser escrit n form P() n n i 0... n i em que cd i é um número compleo (ou i 0 rel) tl que n é um número nturl e n 0. Os números i são denomindos
Leia maisAlgoritmos de Busca de Palavras em Texto
Revisdo 08Nov12 A busc de pdrões dentro de um conjunto de informções tem um grnde plicção em computção. São muits s vrições deste problem, desde procurr determinds plvrs ou sentençs em um texto té procurr
Leia maisINF1007 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 maisMé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 maisUso da memória. Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores. Alocação estática da memória. Alocação estática da memória (2)
Estruturs de Ddos Auls 3 e 4: Uso d memóri e Vetores 08/03/2009 e 10/03/2009 Uso d memóri Existem 3 mneirs de reservr o espço d memóri: Vriáveis glois (estátics) Espço existe enqunto progrm estiver executndo
Leia maisSimbolicamente, para. e 1. a tem-se
. Logritmos Inicilmente vmos trtr dos ritmos, um ferrment crid pr uilir no desenvolvimento de cálculos e que o longo do tempo mostrou-se um modelo dequdo pr vários fenômenos ns ciêncis em gerl. Os ritmos
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 maisGabarito - Matemática Grupo G
1 QUESTÃO: (1,0 ponto) Avlidor Revisor Um resturnte cobr, no lmoço, té s 16 h, o preço fixo de R$ 1,00 por pesso. Após s 16h, esse vlor ci pr R$ 1,00. Em determindo di, 0 pessos lmoçrm no resturnte, sendo
Leia maisResumo da última aula. Compiladores. Conjuntos de itens LR(0) Exercício SLR(1) Análise semântica
Resumo d últim ul Compildores Verificção de tipos (/2) Análise semântic Implementção: Esquems -tribuídos: Mecnismo bottom-up direto Esquems -tribuídos: Mecnismo top-down: Necessit grmátic não recursiv
Leia maisINF 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 mais10. Listas Encadeadas
10. Listas Encadeadas W. Celes e J. L. Rangel Para representarmos um grupo de dados, já vimos que podemos usar um vetor em C. O vetor é a forma mais primitiva de representar diversos elementos agrupados.
Leia maisProjeto de Compiladores Professor Carlos de Salles
Projeto de Compildores 2006.1 Professor Crlos de Slles Trlho 1 Autômto pr Plvrs Reservds Ojetivo do trlho: implementr um progrm que recee como entrd um list de plvrs reservds e define como síd um função
Leia maisProfessores Edu Vicente e Marcos José Colégio Pedro II Departamento de Matemática Potências e Radicais
POTÊNCIAS A potênci de epoente n ( n nturl mior que ) do número, representd por n, é o produto de n ftores iguis. n =...... ( n ftores) é chmdo de bse n é chmdo de epoente Eemplos =... = 8 =... = PROPRIEDADES
Leia maisEstruturas de Dados Aula 11: TAD Pilha 09/05/2011
Estruturas de Dados Aula 11: TAD Pilha 09/05/2011 Fontes Bibliográficas Livros: Projeto de Algoritmos (Nivio Ziviani): Capítulo 3; Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo
Leia maisInternação WEB BR Distribuidora v20130701.docx. Manual de Internação
Mnul de Internção ÍNDICE CARO CREDENCIADO, LEIA COM ATENÇÃO.... 3 FATURAMENTO... 3 PROBLEMAS DE CADASTRO... 3 PENDÊNCIA DO ATENDIMENTO... 3 ACESSANDO O MEDLINK WEB... 4 ADMINISTRAÇÃO DE USUÁRIOS... 5 CRIANDO
Leia maisAula 3 Alocação Dinâmica
Aula 3 Alocação Dinâmica Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas de Internet Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno
Leia maisCONJUNTOS NUMÉRICOS Símbolos Matemáticos
CONJUNTOS NUMÉRICOS Símolos Mtemáticos,,... vriáveis e prâmetros igul A, B,... conjuntos diferente pertence > mior que não pertence < menor que está contido mior ou igul não está contido menor ou igul
Leia maisSemelhança e áreas 1,5
A UA UL LA Semelhnç e áres Introdução N Aul 17, estudmos o Teorem de Tles e semelhnç de triângulos. Nest ul, vmos tornr mis gerl o conceito de semelhnç e ver como se comportm s áres de figurs semelhntes.
Leia maisTransporte de solvente através de membranas: estado estacionário
Trnsporte de solvente trvés de membrns: estdo estcionário Estudos experimentis mostrm que o fluxo de solvente (águ) em respost pressão hidráulic, em um meio homogêneo e poroso, é nálogo o fluxo difusivo
Leia maisUnidimensional pois possui apenas uma única dimensão
Vetores e Mtrizes José Augusto Brnusks Deprtmento de Físic e Mtemátic FFCLRP-USP Sl 6 Bloco P Fone (6) 60-6 Nest ul veremos estruturs de ddos homogênes: vetores (ou rrys) e mtrizes Esss estruturs de ddos
Leia maisFunções recursivas. O exemplo mais comum: int fat(int n){ if(n == 0) return 1; return n*fat(n-1); }
Funções Recursivas Funções recursivas O exemplo mais comum: int fat(int n){ if(n == 0) return 1; return n*fat(n-1); Versão sem recursão: int fat(int n){ int i = 0; int f = 1; for(i=1; i
Leia maisstruct LISTA item quant
UNIVERSIDADE SÃO JUDAS TADEU ESTRUTURA DE DADOS - PROF. H. Senger IMPLEMENTAÇÃO DE LISTAS COM VETORES A implementação de listas utilizando vetores é simples. Existe apenas uma pequena questão, com relação
Leia maisPilhas. Profa Morganna Diniz
Pilhas Profa Morganna Diniz Pilhas Geralmente pilhas são úteis em situações em que dados devem ser recuperados em ordem inversa a do armazenamento É uma estrutura de dados linear que permite acesso por
Leia maisBusca Digital (Trie e Árvore Patrícia) Estrutura de Dados II Jairo Francisco de Souza
Busc Digitl (Trie e Árvore Ptríci) Estrutur de Ddos II Jiro Frncisco de Souz Introdução No prolem de usc, é suposto que existe um conjunto de chves S={s 1,, s n } e um vlor x correspondente um chve que
Leia maisPROGRAMAÇÃO II 3. PILHA DINÂMICA
3. PILHA DINÂMICA PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma pilha é um tipo especial de Pilha na quais todas as inserções e remoções são feitas na primeira posição, que é chamada de topo. Outro nome
Leia maisBusca. Pesquisa sequencial
Busca Banco de dados existem para que, de tempos em tempos, um usuário possa localizar o dado de um registro, simplesmente digitando sua chave. Uma tabela ou um arquivo é um grupo de elementos, cada um
Leia maisAnálise de Variância com Dois Factores
Análise de Vriânci com Dois Fctores Modelo sem intercção Eemplo Neste eemplo, o testrmos hipótese de s três lojs terem volumes médios de vends iguis, estmos testr se o fctor Loj tem influênci no volume
Leia maisCONSTRUÇÃO DE ALGORITMOS E PROGRAMAS
CONSTRUÇÃO DE ALGORITMOS E PROGRAMAS O computdor é cpz de mnipulr e rmzenr um grnde quntidde de ddos ou informções com lto desempenho, liberndo o homem pr outrs trefs ns quis o seu conhecimento é indispensável.
Leia maisCapítulo 1 Introdução à Física
Vetor Pré Vestiulr Comunitário Físic 1 Cpítulo 1 Introdução à Físic Antes de começrem com os conceitos práticos d Físic, é imprescindível pr os lunos de Pré-Vestiulr estrem certificdos de que dominm os
Leia maisINF1007: 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 mais1 As grandezas A, B e C são tais que A é diretamente proporcional a B e inversamente proporcional a C.
As grndezs A, B e C são tis que A é diretmente proporcionl B e inversmente proporcionl C. Qundo B = 00 e C = 4 tem-se A = 5. Qul será o vlor de A qundo tivermos B = 0 e C = 5? B AC Temos, pelo enuncido,
Leia maisDAS5102 Fundamentos da Estrutura da Informação
Pilhas A estrutura de dados Pilha emula a forma de organização de objetos intuitiva que é utilizada diariamente nos mais diversos contextos da vida humana. Containeres são empilhados e desempilhados diariamente
Leia maisÁrvore estritamente binária É uma árvore onde todos os nós que não são folha possuem dois filhos.
Árvore estritmente binári É um árvore onde todos os nós que não são folh possuem dois filhos. Ex.: 434 Árvore binári complet Um árvore binári complet de profundidde d é um árvore estritmente binári onde
Leia maisoperation a b result operation a b MUX result sum i2 cin cout cout cin
Módulo 5 Descrição e simulção em VHDL: ALU do MIPS Ojectivos Pretende-se que o luno descrev, n lingugem VHDL, circuitos comintórios reltivmente complexos, usndo, pr esse efeito, lguns mecnismos d lingugem
Leia maisPontos onde f (x) = 0 e a < x < b. Suponha que f (x 0 ) existe para a < x 0 < b. Se x 0 é um ponto extremo então f (x 0 ) = 0.
Resolver o seguinte PPNL M (min) f() s. [, ] Pr chr solução ótim deve-se chr todos os máimos (mínimos) locis, isto é, os etremos locis. A solução ótim será o etremo locl com mior (menor) vlor de f(). É
Leia maisAula 4: Autômatos Finitos 2. 4.1 Autômatos Finitos Não-Determinísticos
Teori d Computção Primeiro Semestre, 25 Aul 4: Autômtos Finitos 2 DAINF-UTFPR Prof. Ricrdo Dutr d Silv 4. Autômtos Finitos Não-Determinísticos Autômtos Finitos Não-Determinísticos (NFA) são um generlizção
Leia maisMatemática Aplicada. A Mostre que a combinação dos movimentos N e S, em qualquer ordem, é nula, isto é,
Mtemátic Aplicd Considere, no espço crtesino idimensionl, os movimentos unitários N, S, L e O definidos seguir, onde (, ) R é um ponto qulquer: N(, ) (, ) S(, ) (, ) L(, ) (, ) O(, ) (, ) Considere ind
Leia maisProgramação Linear Introdução
Progrmção Liner Introdução Prof. Msc. Fernndo M. A. Nogueir EPD - Deprtmento de Engenhri de Produção FE - Fculdde de Engenhri UFJF - Universidde Federl de Juiz de For Progrmção Liner - Modelgem Progrmção
Leia maisEstruturas de Dados. Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos
Estruturas de Dados Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos Árvores Conceitos Árvores binárias Árvores binárias de pesquisa Árvores binárias balanceadas Árvores ESTRUTURAS
Leia maisPilhas. Fabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes
Pilhas Fabrício J. Barth BandTec - Faculdade de Tecnologia Bandeirantes Fevereiro de 2011 Tópicos Principais Introdução Interface do tipo pilha Exemplo de uso: verificação de expressões Implementação de
Leia mais26/8/2009 ALGORITMOS E ESTRUTURAS DE DADOS CES-11 CES-11 CAPACIDADE DE REPRESENTAÇÃO CES-11. Revisão. Tipo Lógico: Tipo Inteiro: Tipo Caractere:
ALGORITMOS E ESTRUTURAS DE DADOS Prof. Pulo André Cstro uloc@it.br Sl 110 Prédio d Comutção www.com.it.br/~uloc IECE - ITA Tios esclres rimitivos Tios esclres rimitivos Tio Inteiro: Domínio: números inteiros
Leia maisProgramas operam sobre dados. Dados são relacionados e possuem estrutura. Como representar e manipular dados em um computador
Programas operam sobre dados Dados são relacionados e possuem estrutura Como representar e manipular dados em um computador Para representar um baralho precisamos: Representar cartas: naipe e valor struct
Leia maisIntrodução a Programação. Tipos Abstratos de Dados Implementando Pilha e Fila
Introdução a Programação Tipos Abstratos de Dados Implementando Pilha e Fila Abstração Abstração é o processo ou resultado de generalização por redução do conteúdo da informação de um conceito ou fenômeno
Leia maisFigura 13.1: Um exemplo de árvore de diretório.
13. Árvores W. Celes e J. L. Rangel Nos capítulos anteriores examinamos as estruturas de dados que podem ser chamadas de unidimensionais ou lineares, como vetores e listas. A importância dessas estruturas
Leia maisEQUAÇÃO DO 2 GRAU. Seu primeiro passo para a resolução de uma equação do 2 grau é saber identificar os valores de a,b e c.
EQUAÇÃO DO GRAU Você já estudou em série nterior s equções do 1 gru, o gru de um equção é ddo pelo mior expoente d vriável, vej lguns exemplos: x + = 3 equção do 1 gru já que o expoente do x é 1 5x 8 =
Leia maisCES-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 maisComprimento de arco. Universidade de Brasília Departamento de Matemática
Universidde de Brsíli Deprtmento de Mtemátic Cálculo Comprimento de rco Considerefunçãof(x) = (2/3) x 3 definidnointervlo[,],cujográficoestáilustrdo bixo. Neste texto vmos desenvolver um técnic pr clculr
Leia maisTrabalho 3: Agenda de Tarefas
INF 1620 Estruturas de Dados Semestre 08.2 Trabalho 3: Agenda de Tarefas O objetivo deste trabalho é a implementação de um conjunto de funções para a manipulação de uma agenda de tarefas diárias, de forma
Leia maisPortuguês. Manual de Instruções. Função USB. Transferindo padrões de bordado para a máquina Atualização fácil da sua máquina
Mnul de Instruções Função USB Trnsferindo pdrões de borddo pr máquin Atulizção fácil d su máquin Português Introdução Este mnul fornece descrições sobre trnsferênci de pdrões de borddo de um mídi USB
Leia maisFUNDAÇÃO EDUCACIONAL DE ITUIUTABA
FUNDAÇÃO EDUCACIONAL DE ITUIUTABA ASSOCIADA À UNIVERSIDADE DO ESTADO DE MINAS GERAIS CURSO DE SISTEMA DE INFORMAÇÃO PILHA E FILA Prof. Walteno Martins Parreira Júnior www.waltenomartins.com.br waltenomartins@yahoo.com
Leia maisEXAME DE INGRESSO 2014 3º Período
PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA ÁREA DE ENGENHARIA DE COMPUTAÇÃO (141) ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO EXAME DE INGRESSO 2014 º Período NOME: Oservções Importntes: 1. Não
Leia maisProgramação II. Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio
Progrmção II Ordenção (sort) Bruno Feijó Dept. de Informátic, PUC-Rio Bule Sort Bule Sort Apens de interesse didático e de referênci A idéi é ir comprndo dois vizinhos e trocndo o menor pelo mior té que
Leia mais/*(Atenção: Em se tratando de uma lista estaticamente alocada, temos utilizado a estratégia de passa o tamanho máximo do vetor.)*/
========================TDA.H #include "info.h" #define TRUE 1 #define FALSE 0 #define INI_LISTA 1 #define OK 1; #define NOK -1; typedef struct nolista{ info dados; struct nolista *prox; struct nolista
Leia mais2ª Lista de Exercícios
Universidade Federal de Minas Gerais Departamento de Ciência da Computação Algoritmos e Estruturas de Dados II (Turmas M, N, W, F) 1º Semestre de 2012 Profs. Camilo Oliveira, Gisele Pappa, Ítalo Cunha,
Leia maisCOLÉGIO NAVAL 2016 (1º dia)
COLÉGIO NAVAL 016 (1º di) MATEMÁTICA PROVA AMARELA Nº 01 PROVA ROSA Nº 0 ( 5 40) 01) Sej S som dos vlores inteiros que stisfzem inequção 10 1 0. Sendo ssim, pode-se firmr que + ) S é um número divisíel
Leia maisAula 8: Gramáticas Livres de Contexto
Teori d Computção Segundo Semestre, 2014 ul 8: Grmátics Livres de Contexto DINF-UTFPR Prof. Ricrdo Dutr d Silv Veremos gor mneir de gerr s strings de um tipo específico de lingugem, conhecido como lingugem
Leia maisINF 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 maisLINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA CAPÍTULO 6 ARRAYS (VETORES E MATRIZES)
LINGUGEM DE PROGRMÇÃO ESTRUTURD CPÍTULO 6 RRYS VETORES E MTRIZES trdução do termo rry pr língu portugues seri rrnjo. Em progrmção, empreg-se este termo pr representção de um vriável com diversos elementos
Leia maisMétodos Computacionais. Árvores
Métodos Computacionais Árvores Árvores Vetores e Listas são ótimos para representar estrutura de dados lineares, mas não para modelar dados hierárquicos Exemplos de dados hierárquicos: sistema de arquivos
Leia maisOperadores momento e energia e o Princípio da Incerteza
Operdores momento e energi e o Princípio d Incertez A U L A 5 Mets d ul Definir os operdores quânticos do momento liner e d energi e enuncir o Princípio d Incertez de Heisenberg. objetivos clculr grndezs
Leia maisVestibular UFRGS 2013 Resolução da Prova de Matemática
Vestibulr UFRG 0 Resolução d Prov de Mtemátic 6. Alterntiv (C) 00 bilhões 00. ( 000 000 000) 00 000 000 000 0 7. Alterntiv (B) Qundo multiplicmos dois números com o lgrismo ds uniddes igul 4, o lgrismo
Leia maisAPONTAMENTOS DE ÁLGEBRA LINEAR E GEOMETRIA ANALÍTICA
UNIVERSIDADE DO ALGARVE ESCOLA SUPERIOR DE TECNOLOGIA APONTAMENTOS DE ÁLGEBRA LINEAR E GEOMETRIA ANALÍTICA (II Determinntes) ÁREA DEPARTAMENTAL DE ENGENHARIA CIVIL Determinntes Índice 2 Determinntes 2
Leia maisFunção Modular. x, se x < 0. x, se x 0
Módulo de um Número Rel Ddo um número rel, o módulo de é definido por:, se 0 = `, se < 0 Observção: O módulo de um número rel nunc é negtivo. Eemplo : = Eemplo : 0 = ( 0) = 0 Eemplo : 0 = 0 Geometricmente,
Leia maisReforço Orientado. Matemática Ensino Médio Aula 4 - Potenciação. Nome: série: Turma: t) (0,2) 4. a) 10-2. b) (-2) -2. 2 d) e) (0,1) -2.
Reforço Orientdo Mtemátic Ensino Médio Aul - Potencição Nome: série: Turm: Exercícios de sl ) Clcule s potêncis, em cd qudro: r) b) (-) Qudro A s) t) (0,) Qudro B - b) (-) - e) (-,) g) (-) h) e) (0,) -
Leia maisEstruturas de Dados. Módulo 12 - Filas. 9/8/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 12 - Filas 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 maisCINÉTICA QUÍMICA CINÉTICA QUÍMICA. Lei de Velocidade
CINÉTICA QUÍMICA Lei de Velocidde LEIS DE VELOCIDADE - DETERMINAÇÃO Os eperimentos em Cinétic Químic fornecem os vlores ds concentrções ds espécies em função do tempo. A lei de velocidde que govern um
Leia maisAs duas soluções a seguir são exemplos da variedade de soluções admissíveis.
INF 1620- Estruturas de Dados Soluções das questões da P2-08/11/00 1. Queremos programar uma pilha em que a cada elemento devem corresponder duas informações: Escreva os tipos necessários para esta implementação,
Leia maisA Pilha. Aula 02. DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria
Engenharia de CONTROLE e AUTOMAÇÃO A Pilha Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br 1/5
Leia maisLinguagem 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 maisEscola Secundária/2,3 da Sé-Lamego Ficha de Trabalho de Matemática A Ano Lectivo 2011/12 Distribuição de probabilidades 12.º Ano
Escol Secundári/, d Sé-Lmego Fich de Trlho de Mtemátic A Ano Lectivo 0/ Distriuição de proiliddes.º Ano Nome: N.º: Turm:. Num turm do.º no, distriuição dos lunos por idde e sexo é seguinte: Pr formr um
Leia maisInstituto de C. Filas. Luis Martí Instituto de Computação Universidade Federal Fluminense -
Instituto de C Filas Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução
Leia maisb 2 = 1: (resp. R2 e ab) 8.1B Calcule a área da região delimitada pelo eixo x, pelas retas x = B; B > 0; e pelo grá co da função y = x 2 exp
8.1 Áres Plns Suponh que cert região D do plno xy sej delimitd pelo eixo x, pels rets x = e x = b e pelo grá co de um função contínu e não negtiv y = f (x) ; x b, como mostr gur 8.1. A áre d região D é
Leia maisLRE LSC LLC. Autômatos Finitos são reconhecedores para linguagens regulares. Se não existe um AF a linguagem não é regular.
Lingugens Formis Nom Chomsky definiu que s lingugens nturis podem ser clssificds em clsses de lingugens. egundo Hierrqui de Chomsky, s lingugens podem ser dividids em qutro clsses, sendo els: Regulres
Leia maisBUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES
BUSCA EM LISTAS LISTAS SEQÜENCIAIS, LISTAS SIMPLESMENTE E DUPLAMENTE ENCADEADAS E LISTAS CIRCULARES ALGORITMOS DE BUSCA EM LISTAS COM ALOCAÇÃO SEQÜENCIAL Busca em Listas Lineares A operação de busca é
Leia maisResolução: a) o menor valor possível para a razão r ; b) o valor do décimo oitavo termo da PA, para a condição do item a.
O segundo, o sétimo e o vigésimo sétimo termos de um Progressão Aritmétic (PA) de números inteiros, de rzão r, formm, nest ordem, um Progressão Geométric (PG), de rzão q, com qer ~ (nturl diferente de
Leia maisvoid 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 maisAcoplamento. Tipos de acoplamento. Acoplamento por dados. Acoplamento por imagem. Exemplo. É o grau de dependência entre dois módulos.
Acoplmento É o gru de dependênci entre dois módulos. Objetivo: minimizr o coplmento grndes sistems devem ser segmentdos em módulos simples A qulidde do projeto será vlid pelo gru de modulrizção do sistem.
Leia maisListas Duplamente Encadeadas
Listas Duplamente Encadeadas! quando for preciso seguir a seqüência de elementos em ambos os sentidos! cada nó possui dois ponteiros: ant e prox ant prox a b c d Início Fim 1 Listas Duplamente Encadeadas
Leia maisÁrvores Binárias. INF01203 Estruturas de Dados. Tipos de Árvores Binárias. Tipos de Árvores Binárias. grau dos nós. ordenadas.
Árvores ináris gru dos nós 0 1 2 IN01203 struturs de dos Árvores ináris ordends sub-árvore d esquerd sub-árvore d direit = Árvore qulquer = Árvore inári Tipos de Árvores ináris Tipos de Árvores ináris
Leia maisSCC 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{
Leia maisPotencial Elétrico. Evandro Bastos dos Santos. 14 de Março de 2017
Potencil Elétrico Evndro Bstos dos Sntos 14 de Mrço de 2017 1 Energi Potencil Elétric Vmos começr fzendo um nlogi mecânic. Pr um corpo cindo em um cmpo grvitcionl g, prtir de um ltur h i té um ltur h f,
Leia maisINF 1620 P1-10/04/02 Questão 1 Nome:
INF 1620 P1-10/04/02 Questão 1 Considere uma disciplina que adota o seguinte critério de aprovação: os alunos fazem duas provas (P1 e P2) iniciais; se a média nessas duas provas for maior ou igual a 5.0,
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 maisESTRUTURA DE DADOS PILHA
ESTRUTURA DE DADOS PILHA CONCEITO DE PILHAS - Pilhas são listas lineares onde a inserção de um novo item ou a remoção de um item já existente se dá em uma única extremidade, no topo. Pilha vazia Insere(A)
Leia maisTeoria da Computação. Unidade 3 Máquinas Universais (cont.) Referência Teoria da Computação (Divério, 2000)
Teori d Computção Unidde 3 Máquins Universis (cont.) Referênci Teori d Computção (Divério, 2000) 1 Máquin com Pilhs Diferenci-se ds MT e MP pelo fto de possuir memóri de entrd seprd ds memóris de trblho
Leia maisMaterial envolvendo estudo de matrizes e determinantes
E. E. E. M. ÁREA DE CONHECIMENTO DE MATEMÁTICA E SUAS TECNOLOGIAS PROFESSORA ALEXANDRA MARIA º TRIMESTRE/ SÉRIE º ANO NOME: Nº TURMA: Mteril envolvendo estudo de mtrizes e determinntes INSTRUÇÕES:. Este
Leia maisEstruturas de Dados Aula 11: TAD Pilha
Estruturas de Dados Aula 11: TAD Pilha Fontes Bibliográficas Livros: Projeto de Algoritmos (Nivio Ziviani): Capítulo 3; Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 10; Estruturas
Leia mais1. VARIÁVEL ALEATÓRIA 2. DISTRIBUIÇÃO DE PROBABILIDADE
Vriáveis Aletóris 1. VARIÁVEL ALEATÓRIA Suponhmos um espço mostrl S e que cd ponto mostrl sej triuído um número. Fic, então, definid um função chmd vriável letóri 1, com vlores x i2. Assim, se o espço
Leia maisFACULDADE DE TECNOLOGIA SENAC GOIÁS ADELTON HENRIQUE ABISHAI LEMES BORGES NETO HENRIQUE FERREIRA DA SILVA
FACULDADE DE TECNOLOGIA SENAC GOIÁS ADELTON HENRIQUE ABISHAI LEMES BORGES NETO HENRIQUE FERREIRA DA SILVA ESTRUTURA DE DADOS GOIANIA 2015/2 ADELTON HENRIQUE ABISHAI LEMES BORGES NETO HENRIQUE FERREIRA
Leia maiso Seu pé direito na medicina
o Seu pé direito n medicin UNIFESP //006 MATEMÁTIA 0 Entre os primeiros mil números inteiros positivos, quntos são divisíveis pelos números,, 4 e 5? 60 b) 0 c) 0 d) 6 e) 5 Se o número é divisível por,,
Leia mais