Exercícios sobre Listas, Árvores, Grafos e Recursão Generativa
|
|
- Rafaela Barreiro das Neves
- 6 Há anos
- Visualizações:
Transcrição
1 Exercícios sobre Listas, Árvores, Grafos e Recursão Generativa Fundamentos de Algoritmos INF05008 Esta listanão épara entrega,massimpara aferiropreparo individualdoalunopara a última prova; dúvidas poderão ser discutidas na aula do dia 7/12 ATENÇÃO: DEFINIÇÕES DE DADOS, CONTRATOS E EXEMPLOS FAZEM PARTE DAS SOLUÇÕES 1. Desenvolva um programa que ordena, em ordem crescente, lista de mensagens ( s) pela data (dia apenas) deste . Considere que: uma estrutura é definida da seguinte forma: (define-struct (remetente dia texto)) um é uma estrutura (make- remetente dia texto) onde remetente e textosão strings e dia é um número. Defina o(s) outro(s) tipo(s) de dado(s) antes de apresentar a função. 2. Seguindo o enunciado do exercício anterior, modifique o programa para que ordene os s pelo remetente. (Dica: use string<?). 3. Ainda considerando a questão de ordenação dos s, desenvolva uma função de alta ordem para ordenar s pela data que receba como argumento também a forma de ordenação (crescente ou decrescente, através de funções apropriadas). 4. Considereafunção searchquedeterminaseumnúmeroocorreounãoemumalistadenúmeros. Como pode ser observado, esta função tem que percorrer toda a lista para determinar isto. ;; search : number list-of-numbers -> boolean (define (search n alon) [(empty? alon) false] [else (or (= (first alon) n) (search n (rest alon)))])) Desenvolva uma função search-sorted que determina a mesma coisa, mas que se aproveita do fato de que alista está ordenada. 5. Simule manualmente as chamadas e confirme que (ancestral-olhos-azuis? empty) retorna false. Faça o mesmo para (ancestral-olhos-azuis? Gustav) (não é necessário realizar todas as chamadas; concentre-se nas principais). Obs.: para este e outros exemplos sobre árvores, consideraremos a árvore usada no exemplo visto em aula. 6. Desenvolva a função conta-pessoas que consome uma árvore cujos nodos são membros de uma família, e produz onúmero de pessas nafamília. 7. Desenvolva a função idade-média que consome uma árvore cujos nodos são membros de uma família, e produz a idade média das pessoas na família. 8. Desenvolva a função cores-dos-olhos que consome uma árvore cujos nodos são membros de uma família, e produz uma lista de todas as cores de olhos que ocorrem na família. Uma cor de olhos pode ocorrer mais de uma vez nalista. Dica: use a operação append que consome 2 listas e produz a concatenação delas. 9. Desenvolva a função contem-ab? que consome um número n e uma árvore binária cujos nodos são números. Se a árvore contiver o número em algum dos nodos, retornar true, senão false. 1
2 10. Desenvolva a função pesquisar-ab que consome um número e uma árvore binária cujos nodos contém estruturas que armazenam dados sobre um determinado contribuinte. As informações relevantes sobre contribuintes são: seu CPF e seu nome; além disto os nodos precisam apontar para os nodos anterior (esquerda) e posterior (direita). Esta função produz o nome do contribuinte caso o número exista na árvore e false em caso contrário. 11. Desenvolva a função na-ordem que consome uma árvore binária referente a contribuintes e produz uma lista de todos os CPF s destes contribuintes. Tal lista deve conter os números na ordem em que aparecem na árvore da esquerda para a direita. Dica: use a operação append que concatena 2 ou mais listas. 12. Desenvolva a função pesquisar-abp que consome um número n e uma ABP(árvore binária de pesquisa). SeaárvorecontiverumnodocujaestruturatemoCPFigualan,afunçãoretornaonomedocontribuinte. Caso contrario, produz false. Compare com o resultado produzido pela função pesquisar-ab (ver exercício nesta lista). 13. Desenvolvaafunção insere-nó. AfunçãorecebeumaABPB,umnúmeroneumsímbolos. Afunção cria uma nova ABP igual aanterior mas com aadição do nócom valores n e s. 14. Desenvolva a função constrói-abp a partir de uma lista-de-números. Use as listas exemplos apresentadas napágina 204 do livro. Uma lista-de-números é: empty (cons (list id nome) lnum) onde id é um número, nome é um símbolo, e lnum é uma lista de números 15. Uma página web é: (a) empty, ou (b) (cons s wp), onde s é um símbolo e wp é uma página web, ou (c) (cons ewp wp), onde ewp e wp são páginas web A partir dessa definição de dados, desenvolva a função troca. A função recebe dois símbolos, novo e velho, e uma página web wp. A função produz uma página com a mesma estrutura de wp, mas com todas as ocorrências de velho trocadas por novo. 16. Muitos usuários não gostam de navegar em páginas web que têm muitos sub-níveis até que se atinja a informação necessária. Por isso, um web designer quer medir qual a profundidade (número de níveis) de uma página. Se uma página contem apenas símbolos, então sua profundidade é zero. Uma página que remete a uma sub-página tem a profundidade desta mais um. Se uma página remete a diversas páginas, a profundidade dela é a máxima profundidade entre as páginas para as quais ela remete, mais um. Desenvolva a função profundidade que consome uma página web e calcula sua profundidade. 17. Simule manualmente (descendente-olhos-azuis? Eva), bem como (descendente-olhos-azuis? Bettina). 18. Desenvolva a função quão-longe que determina quão longe, na árvore, está um dado parent de um de seus descendentes de olhos azuis, caso haja algum. Se um dado parent tem olhos azuis, a distância é zero. Em caso contrário, se pelo menos um de seus filhos tem olhos azuis, a distância é um, e assim por diante. Se nenhum descendente tiver olhos azuis, então a função deve retornar false. 19. Desenvolver a função conta-descendentes que consome um nodo do tipo parent e conta o número de seus descendentes, incluindo a si mesmo. Modifique o exercício e crie a função conta-descendentes-exclusivo que realiza o mesmo porém exclui a si mesmo. 20. Desenvolver a função cor-dos-olhos que consome um parent e produz uma lista com todas as cores deolhosemsuaárvoregenealógica(seusdescendentes). Umacorpodeocorrermaisdeumaveznalista. 21. Desenvolver a função tamanho-página que consome uma página web (como definida) e produz o número de símbolos (palavras que ela contem). 2
3 22. Desenvolva a função ocorre-símbolo? que consome um símbolo e uma página web e determina se tal símbolo ocorre em algum lugar da página, incluindo suas sub-páginas. 23. Desenvolva a função encontra-símbolo. Ela produz false se um dado símbolo não ocorre em uma dada página ou em alguma de suas sub-páginas. Se o símbolo ocorre pelo menos uma vez, a função deve produzir uma lista dos cabeçalhos das páginas percorridas. Considere que uma estrutura webpage contem um cabeçalho (um símbolo) e um corpo (uma lista de símbolos). Dica: defina uma função auxiliar similar mas que produza apenas true quando uma web-page contem o símbolo desejado. 24. Explique porque cada uma das expressões abaixo é sintaticamente incorreta: 1. (local ((define x 10) (y (+ x x))) y) 2. (local ((define (f x) (+ (* x x) (* 3 x) 15)) (define x 100) (define f@100 (f x))) f@100 x) 3. (local ((define (f x) (+ (* x x) (* 3 x) 14)) (define x 100) (define f (f x))) f) 25. Determine quais das seguinte expressões são legais e quais não são, e explique porque. 1. (define A-CONSTANT (not (local ((define (odd an) [(= an 0) false] [else (even (- an 1))])) (define (even an) [(= an 0) true] [else (odd (- an 1))]))) (even a-nat-num)))) 2. (+ (local ((define (f x) (+ (* x x) (* 3 x) 15)) (define x 100) (define f@100 (f x))) f@100) 1000) 3. (local ((define CONST 100) (define f x (+ x CONST))) (define (g x y z) (f (+ x (* y z))))) 26. Avalie manualmente as seguintes expressões: 1. (local ((define (x y) (* 3 y))) (* (x 2) 5)) 2. (local ((define (f c) (+ (* 9/5 c) 32))) (- (f 0) (f 10))) 3
4 3. (local ((define (odd? n) [(zero? n) false] [else (even? (sub1 n))])) (define (even? n) [(zero? n) true] [else (odd? (sub1 n))]))) (even? 1)) 4. (+ (local ((define (f x) (g (+ x 1) 22)) (define (g x y) (+ x y))) (f 10)) 555) 5. (define (h n) [(= n 0) empty] [else (local ((define r (* n n))) (cons r (h (- n 1))))])) (h 2) 27. Use uma expressão local para organizar a função para encontrar descendentes de olhos azuis vista anteriormente. 28. Considere a seguinte definição de função: ;; maxi : non-empty-lon -> number ;; to determine the largest number on alon (define (maxi alon) [(empty? (rest alon)) (first alon)] [else [(> (first alon) (maxi (rest alon))) (first alon)] [else (maxi (rest alon))])])) Notar que ambas as cláusulas da expressão cond computam (maxi (rest an-inv)). Logo, esta é uma candidata natural a uma expressão local. Reformule a função dada usando a expressão local e teste ambas as versões com (list ). Qual o efeito? Explique. 29. Considere a seguinte definição de função e considere inventário conforme definido anteriormente neste curso: ;; extract1 : inventário -> inventário ;; cria um inventário a partir de an-inv para ;; todos os itens que custam menos de $1 (define (extract1 an-inv) [(empty? an-inv) empty] [else [(<= (ir-price (first an-inv)) 1.00) (cons (first an-inv) (extract1 (rest an-inv)))] [else (extract1 (rest an-inv))])])) Já que ambas as cláusulas da expressão cond extraem o primeiro ítem de um inventário, reformule o exemplo usando a expressão local. 30. Descreva as seguintes classes de funções: 4
5 1. (number -> boolean) 2. (boolean symbol -> boolean) 3. (number number number -> number) 4. (number -> (listof number)) 5. ((listof number) -> boolean) 31. Escreva o contrato da função filter1 conforme definida abaixo: (define (filter1 rel-op alon t) [(empty? alon) empty] [else [(rel-op (first alon) t) (cons (first alon) (filter1 rel-op (rest alon) t))] [else (filter1 rel-op (rest alon) t)])])) 32. Abstraia as 2 funções seguintes em uma única função chamada extremo: ;; mini : nelon -> number ;; to determine the smallest number ;; on alon (define (mini alon) [(empty? (rest alon)) (first alon)] [else [(< (first alon) (mini (rest alon))) (first alon)] [else (mini (rest alon))])])) ;; maxi : nelon -> number ;; to determine the largest number ;; on alon (define (maxi alon) [(empty? (rest alon)) (first alon)] [else [(> (first alon) (maxi (rest alon))) (first alon)] [else (maxi (rest alon))])])) Ambas consomem listas não vazias(nelon) e produzem um único número. A função da esquerda produz o menor número dalista, enquanto que adadireita produz omaior. Posteriormente, defina as funções mini1 e maxi1 em termos da função extremo. Teste cada uma das versões com as seguintes listas: (a) (list ) (b) (list ) (c) (list ) 33. Formule contratos para as seguintes funções: (a) sort: consomeumalistadenúmeroseumafunçãoqueconsome2números(dalistadada)eproduz um booleano; sort produz então uma lista de números (b) map que produz uma lista de números e consome uma função de número para número e uma lista de números (c) projectqueproduzumalistadesímboloseconsomeumalistadelistadesímboloseumafunção de lista de símbolos para símbolo 34. Use filter1 para desenvolver uma função que consome uma lista de símbolos e extrai todos os símbolos que não são iguais a car. Escreva ocontrato de filter Desenvolva a função mesmo-resultado?, a qual determina se duas funções (ambas consomem três números e produzem um número), produzem o mesmo resultado para 1.2, 3, Modifique as definições de ordena e insere para que elas passem a ser funções de alta ordem onde o critério de ordenação é definido como parâmetro. Denomine-as ordena-criterio e insere-criterio. 5
6 37. Simulte todos os passos até a solução usando a função quick-sort quando aplicada a (list ). 38. O que acontece se usarmos quick-sort com a lista (list ))? Modifique quick-sort para que nos devolva uma lista com omesmo tamanho da lista passada como argumento. 39. Desenvolva e teste as funções mdc-e e mdc-g com os números e Use (time (mdc-e...)) e (time (mdc-g...)) e compare os tempos de execução. Explique a razão da diferença. 40. A função quick-sort reduz o tamanho do problema em muitos casos, mas ela é muito lenta quando se trata de problemas pequenos. Desta forma, em geral se usa quick-sort para reduzir o tamanho do problema, aliada à função ordena (vista na aula sobre o cap. 12) para tratar os sub-problemas. Desenvolva uma versão da quick-sort que usa a função ordena se o tamanho da lista está abaixo de um limiar (dado como argumento). 41. Teste as funções quick-sort e ordena com o auxílio de (time (...)), para diversos tamanhos de listaseconstateque ordenaémaisrápidaparalistasdeatéumcertotamanho. Determinequetamanho é este. 42. Desenvolva a função concatena-strings, que recebe uma lista não-vazia do tipo lista-de-strings e retorna a concatenação de todas as strings da lista. Por exemplo: (concatena-strings (cons "Fundamentos de Algoritmos " (cons "é uma disciplina " (cons "muito legal!" empty)))) ===> "Fundamentos de Algoritmos é uma disciplina muito legal!" string string -> string para concatenar duas strings especí- Use a função string-append : ficas. 43. Um cozinheiro deve preparar uma receita. Antes de começar, ele precisa ter certeza de que possui todos os ingredientes necessários. Para ajudar esse cozinheiro, apresente a definição de dados do tipo lista-de-ingredientes e crie um programa que, a partir da lista de ingredientes em estoque e da lista de ingredientes da receita, retorne "OK" se todos os ingredientes estiverem disponíveis. Caso contrário, o programa deve informar quais ingredientes estão faltando. 44. Um ônibus percorre uma determinada linha, passando por diversas paradas. Apresente a definição de dados para lista-de-paradas e crie um programa que indique se é possível utilizar este ônibus para um deslocamento de uma parada inicial até uma parada final. Assuma que o percurso de volta é o inverso do percurso de ida. 45. Dadas três listas l1, l2 e l3 do tipo lista-de-números, definido abaixo, crie um programa que diga qual das três listas possui mais números dentro de um intervalo fechado entre dois números ini-int e fim-int. ;; Uma lista-de-números é ou ;; - empty, ou ;; - (cons n ldn), onde ;; n : number ;; ldn : lista-de-números 46. Desafio (exercício 12.4 do livro). Desenvolva a função permuta que, dada uma palavra (representada como uma lista de símbolos), retorna uma lista de todas as suas possíveis permutações. Por exemplo: 6
7 (permuta (list o l a)) ====> (list (list o l a) (list o a l) (list l o a) (list l a o) (list a a l) (list a l o) ) Dica 1. É necessário o uso de funções auxiliares. Dica 2. Para iniciar, pode-se usar a estratégia da função ordena: separar os itens da lista, passando-os para uma auxiliar. Dica 3. Cuidado com os tipos de retorno das funções: este exemplo ressalta a importância do contrato no desenvolvimento de funções complexas. 47. Considere a seguinte definição de dados: (define-struct nó (val esq dir)) Uma AB (árvore binária) é ou - false, ou - (make-nó val esq dir), onde val é número, esq e dir são AB Defina a função valores-ab que, dada uma árvore binária de entrada, retorna uma lista com os valores de todos osnós da árvore (emqualquer ordem). 48. Escreva uma função acha-maior-ab que encontre o maior valor armazenado em uma árvore binária. 49. Apresente um programa converte-árvores, o qual, dada uma AB, converte esta estrutura em uma ABP. 50. Além do insertion sort e do quick sort, vistos em aula, outro método de ordenação famoso é o merge sort. Neste método, a lista de números a serem ordenados é dividida em pares de números (listas de dois números consecutivos na lista original). Cada lista de pares é ordenada. Após isso, listas de pares ordenados consecutivos são ordenados, formando listas ordenadas de 4 números. Em seguida, as listas de 4números ordenados são usadas para formar listas com oitonúmeros, e assim por diante. Apresente um programa que implemente este método de ordenação. Assuma que o tamanho da lista de entrada é sempre uma potência de 2maior ou igual a Considere um conjunto de cidades de uma região. Cada cidade possui um conjunto de estradas que a ligam a outras cidades da mesma região, sendo que todas as estradas possuem mão dupla. Crie um programa que, dada uma lista de cidades e suas conexões, ache o menor caminho entre uma cidade de origem e uma cidade de destino. O comprimento do caminho a ser considerado é o número de estradas a serem percorridas entre cidades; i.e., o menor caminho possível entre duas cidades seria uma estrada que ligue as duas diretamente. No entanto, não deve ser assumido que sempre existe uma ligação direta entre todas as cidades. 52. Escreva a função move-bolas que, dada uma lista de bolas, move cada uma até que todas estejam fora do limite da mesa (uma única mesa) 7
Fundamentos de Algoritmos
Fundamentos de Algoritmos CIC/UFRGS 2006/1 Mais em definições auto-referenciáveis: roteiro Estruturas em estruturas: exemplo das árvores de hereditariedade Árvores binárias de pesquisa Listas de listas
Leia maisFundamentos de Algoritmos
Fundamentos de Algoritmos CIC/UFRGS 2006/1 Mais em definições auto-referenciáveis foi visto como definir árvores de ascendência, definindo dois campos do tipo nó que indicam os dois pais árvores de descendência
Leia mais1. Faça um programa que leia uma string digitada pelo usuário e salve em um arquivo em branco.
Segunda lista de exercícios v100 Engenharia Elétrica - Eletrônica 2º Semestre de 2015 Prof: Daniel Rodrigo Ferraz Bonetti SSC0300 Linguagem de Programação e Aplicações 1 Faça um programa que leia uma string
Leia maisFunções Compostas. Fundamentos de Algoritmos. Projeto de programas complexos. Roteiro. Um programa é composto por definições de funções e variáveis
Funções Compostas 1 Fundamentos de Algoritmos CIC/UFRGS 2006/1 Um programa é composto por definições de funções e variáveis Funções auxiliares são definidas para processar dependências Nesta seção funções
Leia maisUNIVERSIDADE 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: sandra@icmc.usp.br Lista de Exercícios Árvores, Árvores Binárias, Árvores
Leia maisExercícios: Árvores. Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de estrutura de dados em linguagem C Exercícios: Árvores 1. Utilizando os conceitos de grafos, defina uma árvore.
Leia maisINF111 Programação II Aulas 11, 12, 13 Ordenação
INF Programação II Aulas,, Ordenação Departamento de Informática UFV Ordenação A ordenação é o processo de organizar um conunto (vetor) de n obetos ou registros segundo uma determinada ordem crescente
Leia maisEstruturas de Dados II
Estruturas de Dados II Rodrigo Porfírio da Silva Sacchi rodrigosacchi@ufgd.edu.br 3410-2086 Aula 2: Árvores http://www.do.ufgd.edu.br/rodrigosacchi Árvores Definição: Árvores Uma árvore T é um conjunto
Leia maisESTRUTURA DE DADOS E ALGORITMOS. Árvores Binárias de Busca. Cristina Boeres
ESTRUTURA DE DADOS E ALGORITMOS Árvores Binárias de Busca Cristina Boeres Árvore Binária de Busca 30! construída de tal forma que, para cada nó: nós com chaves menores estão na sub-árvore esquerda nós
Leia maisListas. CIC/UFRGS INF Fundamentos de Algoritmos 2006/1
Listas 1 Estruturas são apenas uma forma de representar informação composta. Elas são úteis quando sabemos exatamente como e por quantas partes um determinado dado é composto. Quando não sabemos ao certo
Leia maisIntrodução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)
Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 Lista Obrigatória 02 - Prof. Rafael Oliveira (Deve ser entregue em PDF via Moodle: Escolha apenas 5 exercícios para entrega) Exercício 01
Leia maisÁrvores Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação
1 Árvores Estrutura de Dados Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 2 Árvore Binária de Busca Definição: uma árvore binária de busca (ABB) é uma árvore binária na qual
Leia maisUniversidade Federal do ABC Avaliação Disciplina Turma Professor Data Instruções para a prova (leia antes de começar): SelectionSort selectonsortrec
Universidade Federal do ABC Avaliação: Prova 02 Disciplina: BC1424 - Algoritmos e Estruturas de Dados I Turma: Noturno Professor: Jesús P. Mena-Chalco Data: 03/05/2016 Nome completo: RA: Instruções para
Leia mais2. Diga qual é a diferença entre tipos de informação elementares e tipos de informação estruturados.
Capítulo 5 Abstracção de dados 5. Exercícios de revisão. Diga o que é um tipo abstracto de informação.. Diga qual é a diferença entre tipos de informação elementares e tipos de informação estruturados.
Leia maisLimite assintótico para a ordenação, Ordenação em tempo linear
Algoritmos e Estruturas de Dados I Limite assintótico para a ordenação, Ordenação em tempo linear Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2017 1 Ordenação Ordenar corresponde ao processo
Leia maisÁ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
Leia maisLista 1. 8 de abril de Algorithms: Capítulo 0, exercícios 1 e 2. Tardos: Todos exercícios do cap 2 do livro texto, exceto 7 e 8 letra b.
Lista 1 8 de abril de 2013 1 Exercícios Básicos 1.1 Na bibliografia Algorithms: Capítulo 0, exercícios 1 e 2. Tardos: Todos exercícios do cap 2 do livro texto, exceto 7 e 8 letra b. 1.2 Outros 1. Projete
Leia maisÁRVORES E ÁRVORES BINÁRIAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
ÁRVORES E ÁRVORES BINÁRIAS Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ÁRVORES Árvores Árvores Binárias INSTITUTO DE COMPUTAÇÃO - UFF 2 ÁRVORES Fonte de consulta: Szwarcfiter, J.; Markezon,
Leia maisALGORITMOS DE ORDENAÇÃO
ALGORITMOS DE ORDENAÇÃO Prof. André Backes Conceitos básicos 2 Ordenação Ato de colocar um conjunto de dados em uma determinada ordem predefinida Fora de ordem 5, 2, 1, 3, 4 Ordenado 1, 2, 3, 4, 5 OU 5,
Leia maisAlgoritmos e Estruturas de Dados Prof. Osório PIP/CA - Aula 05 Pag.: 1
Algoritmos e Estruturas de Dados Prof. Osório PIP/CA - Aula 05 Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) PIP/CA - Programa Interdisciplinar de Pós-Graduação
Leia maisLista de exercícios sobre contagem de operações Prof. João B. Oliveira
Lista de exercícios sobre contagem de operações Prof. João B. Oliveira 1. metodo m ( Vetor V ) int i, res = 0; para i de 1 a V.size res = res + V[i]; return res; Soma de elementos de um vetor, O( ). 2.
Leia maisINF 1620 P2-23/10/04 Questão 1 Nome:
INF 1620 P2-23/10/04 Questão 1 Considere um tipo abstrato de dados para representar uma disciplina da PUC-Rio, com as seguintes informações: Nome da disciplina: com até 50 caracteres Código da disciplina:
Leia maisÁRVORES E ÁRVORE BINÁRIA DE BUSCA
ÁRVORES E ÁRVORE BINÁRIA DE BUSCA Prof. André Backes Definição 2 Diversas aplicações necessitam que se represente um conjunto de objetos e as suas relações hierárquicas Uma árvore é uma abstração matemática
Leia maisÁrvores. SCC-214 Projeto de Algoritmos. Thiago A. S. Pardo. Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral
SCC-214 Projeto de Algoritmos Thiago A. S. Pardo Listas e árvores Listas lineares Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral Diversas aplicações necessitam de estruturas
Leia maisÁ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
Leia maisProgramação imperativa
Capítulo 8 Programação imperativa 8.1 Exercícios de revisão 1. Distinga entre programação imperativa e programação funcional. 2. Explique a necessidade da introdução do operador de atribuição. 3. Diga
Leia maisAlgoritmia e Programação
Algoritmia e Programação Conteúdo Pesquisa em Vectores Apresentação e discussão de vários algoritmos de pesquisa. Pesquisa linear ou sequencial Pesquisa binária Ordenação de Vectores Exemplos de aplicação
Leia maisAula 19: Métodos eficientes de ordenação
Algoritmos e Estruturas de Dados I Aula 19: Métodos eficientes de ordenação (Merge sort e Quick sort) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 1Q-2019 1 Intercalando 2 vetores ordenados 2 Intercalando
Leia maisESTRUTURA DE DADOS. Árvores, árvores binárias e percursos. Cristina Boeres
ESTRUTURA DE DADOS Árvores, árvores binárias e percursos Cristina Boeres 2 Árvores! utilizada em muitas aplicações! modela uma hierarquia entre elementos árvore genealógica diagrama hierárquico de uma
Leia maisEstrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB
Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Árvores (parte 2) Estruturas de Dados 2 Organização dos dados: Linear: Listas, pilhas, filas. Relação sequencial.
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 maisExercícios: Recursão
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Recursão 1. Faça uma função recursiva que calcule e retorne o fatorial
Leia maisINF 1010 Estruturas de Dados Avançadas. Árvores binárias
INF 1010 Estruturas de Dados Avançadas Árvores binárias 1 Árvore estrutura hierárquica: A B E F C D G A B C E F D G A B C D E F G (A (B (E, F)), C, (D (G))) 05/09/16 2 Árvore - definições árvore: nó raiz
Leia maisINF 1620 P4 30/06/07 Questão 1 Nome:
INF 1620 P4 30/06/07 Questão 1 O maior divisor comum (MDC) de dois números inteiros é o maior número inteiro que faz uma divisão exata (com resto zero) desses dois números. Por exemplo, o MDC de 32 e 40
Leia maisLista 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
Leia maisALGORITMOS E ESTRUTURAS DE DADOS CES-11
ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA CAP. 5. TÉCNICAS DE ORDENAÇÃO 5.1. Introdução 5.2. Métodos
Leia maisProgramação Funcional Aulas 5 & 6
Programação Funcional Aulas 5 & 6 Sandra Alves DCC/FCUP 2016/17 Definições usando outras funções Podemos definir funções usando outras previamente definidas (por exemplo: do prelúdio-padrão). Exemplo:
Leia maisAula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler
Aula 3 Listas Lineares Sequenciais Ordenadas prof Leticia Winkler 1 Listas Lineares Sequenciais Ordenadas Elementos da lista estão dispostos num vetor (contíguos na memória) e ordenado de acordo com alguma
Leia maisÁrvores & Árvores Binárias
SCE 182 SCC122 Algoritmos Estruturas e Estruturas de Dados de Dados I Árvores & Árvores Binárias Prof. Material Original: Walter Aoiama Nagai; Maria das Graças Volpe Nunes; Definições Árvore T é um conjunto
Leia maisUNIVERSIDADE DA BEIRA INTERIOR
UNIVERSIDADE DA BEIRA INTERIOR Algoritmos e Estruturas de Dados - Bioengenharia 2º Semestre Exame Época Normal Resolução 13/junho/2015 A. [3.5 val] Algoritmos de ordenação e de pesquisa Considere-se as
Leia maisINF 1620 P4-06/12/02 Questão 1 Nome:
INF 1620 P4-06/12/02 Questão 1 (a) Escreva uma função em C que receba como parâmetro um número inteiro não negativo e retorne, como resultado da função, o valor do seu fatorial. O cabeçalho desta função
Leia maisAula T19 BCC202 Pesquisa (Parte 1) Pesquisa Binária. Túlio Toffolo
Aula T19 BCC202 Pesquisa (Parte 1) Pesquisa Binária Túlio Toffolo www.decom.ufop.br/toffolo Pesquisa em Memória Primária n Introdução - Conceitos Básicos n Pesquisa Sequencial n Pesquisa Binária n Árvores
Leia maisGrafos: Busca. SCE-183 Algoritmos e Estruturas de Dados 2. Thiago A. S. Pardo Maria Cristina
Grafos: Busca SCE-183 Algoritmos e Estruturas de Dados 2 Thiago A. S. Pardo Maria Cristina Percorrendo um grafo Percorrendo um Grafo Percorrer um grafo é um problema fundamental Deve-se ter uma forma sistemática
Leia maisMétodo de ordenação - objetivos:
Método de ordenação - objetivos: Corresponde ao processo de rearranjar um conjunto de objetos em uma ordem ascendente ou descendente. Facilitar a recuperação posterior de itens do conjunto ordenado. São
Leia maisFicheiros. Capítulo 8
Capítulo 8 Ficheiros 1. (2) Escreva a função concatena que recebe uma lista de cadeias de caracteres, cada uma correspondendo ao nome de um ficheiro, e uma cadeia de caracteres, correspondendo ao nome
Leia maisLista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013
Lista 1 - PMR2300 Fabio G. Cozman 3 de abril de 2013 1. Qual String é impressa pelo programa: p u b l i c c l a s s What { p u b l i c s t a t i c void f ( i n t x ) { x = 2 ; p u b l i c s t a t i c void
Leia maisDepartamento de Informática PUC-Rio INF Estruturas de Dados Lista 2 Completa (Gerada em 8 de maio de 2006)
Departamento de Informática PUC-Rio INF1620 - Estruturas de Dados Lista 2 Completa 2006.1 (Gerada em 8 de maio de 2006) 1. Considerando a estrutura struct Ponto { int x; int y; para representar um ponto
Leia maisOrdenação em tempo linear
Ordenação em tempo linear CLRS cap 8 Algoritmos p. 1 Ordenação: limite inferior Problema: Rearranjar um vetor A[1..n] de modo que ele fique em ordem crescente. Existem algoritmos que consomem tempo O(n
Leia maisProgramação II. Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio Quick Sort (Ordenação Rápida) Algoritmo Quick Sort (recursivo) O algoritmo de Quick Sort foi desenvolvido por Sir Charles Hoare
Leia maisINF 1620 P4-27/06/02 Questão 1 Nome:
INF 1620 P4-27/06/02 Questão 1 Considere o tipo que representa uma grandeza vetorial (com três componentes) dado por: struct vetor { float x; float y; float z; }; typedef vetor Vetor; Pede-se: (a) Escreva
Leia maisINF 1620 P4-09/07/03 Questão 1 Nome:
INF 1620 P4-09/07/03 Questão 1 Um ponto geométrico no espaço 2D é representado pelas coordenadas reais x e y. Considere uma aplicação que precisa manipular pontos, através da implementação de duas funções.
Leia mais8. Árvores. Fernando Silva DCC-FCUP. Estruturas de Dados. Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38
8. Árvores Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38 Árvores - estruturas não lineares (1) Uma lista é um exemplo de uma estrutura de dados
Leia mais8. Árvores. Fernando Silva. Estruturas de Dados DCC-FCUP. Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38
8. Árvores Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 8. Árvores Estruturas de Dados 1 / 38 Árvores - estruturas não lineares (1) Uma lista é um exemplo de uma estrutura de dados
Leia maisFundamentos de Programação
Fundamentos de Programação Primeiro Teste 16 de Abril de 2011 09:00 10:30 Nome: Número: Esta prova, individual e sem consulta, tem 7 páginas com 9 perguntas. A cotação de cada pergunta está assinalada
Leia maisÁrvores Binárias. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich
Árvores Binárias SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista. Figuras editadas por Isadora Maria Mendes http://www.icmc.usp.br/~paulovic
Leia maisFontes Bibliográficas. Estruturas de Dados Aula 15: Árvores. Livros:
Fontes Bibliográficas Estruturas de Dados Aula 15: Árvores Livros: Introdução a Estruturas de Dados (Celes, Cerqueira e Rangel): Capítulo 13; Projeto de Algoritmos (Nivio Ziviani): Capítulo 5; Estruturas
Leia maisListas (Parte 1) Túlio Toffolo BCC202 Aula 09 Algoritmos e Estruturas de Dados I
Listas (Parte 1) Túlio Toffolo tulio@toffolo.com.br www.toffolo.com.br BCC202 Aula 09 Algoritmos e Estruturas de Dados I Ementa do Curso Tipos Abstratos de Dados / Alocação Dinâmica Análise de Algoritmos
Leia maisParadigmas de programação
Paradigmas de programação 1 Paradigma? Um paradigma é algo que serve de exemplo ou modelo. Sinônimos: Padrão Prototipo 2 Paradigma de programação? É uma proposta tecnológica. Fornece uma visão do programador
Leia maisINTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2
INTRODUÇÃO À COMPUTAÇÃO - RESUMO E EXERCÍCIOS* P2 *Exercícios de provas anteriores escolhidos para você estar preparado para qualquer questão na prova. Resoluções em simplificaaulas.com. Listas(= tipo
Leia maisRecursividade. Métodos iterativos. Prof. Cesar Augusto Tacla. Métodos iterativos utilizam estruturas de repetição
Recursividade Prof. Cesar Augusto Tacla Métodos iterativos Métodos iterativos utilizam estruturas de repetição For While Do while Normalmente, um método invoca outros métodos, não a si mesmo. 2 1 Recursividade
Leia maisProgramação II. Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Ordenação (sort) Bruno Feijó Dept. de Informática, PUC-Rio Bubble Sort Bubble Sort Ordem Crescente Apenas de interesse didático e de referência A idéia é ir comparando dois vizinhos e trocando
Leia maisÁrvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Leia maisÁrvores & Árvores Binárias
SCE 182 SCC122 Algoritmos Estruturas e Estruturas de Dados de Dados I Árvores & Árvores Binárias Prof. Material Original: Walter Aoiama Nagai; Maria das Graças Volpe Nunes; Definições Árvore T é um conjunto
Leia maisINF 1620 P3-27/11/04 Questão 1 Nome:
INF 1620 P3-27/11/04 Questão 1 Considere um arquivo texto com as notas dos alunos de uma disciplina. Os dados de cada aluno são armazenados em duas linhas do arquivo: uma com o seu nome (cadeia com até
Leia maisINF1010 Lista de Exercícios 2
INF00 Lista de Exercícios 2 Árvores. Construir algoritmo para dada uma árvore n-ária, transformá-la em uma árvore binária. 2. Qual a maior e menor quantidade de nós que podem existir em uma árvore binária
Leia maisLista 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
Leia mais(a) Indique, em português, o que realiza a seguinte função. [4 pontos]
Universidade Federal do ABC Avaliação: Prova 02 Disciplina: MCTA028 - Programação Estruturada Turma: Noturno - A1 Professor: Jesús P. Mena-Chalco Data: 01/12/2016 Nome completo: RA: Instruções para a prova
Leia maisBusca em Arranjos. Busca em arranjos. Busca em arranjos. Programação de Computadores. Busca em Arranjos
Busca em Arranjos Programação de Computadores Busca em Arranjos Como sabemos, arranjos são uma maneira de se armazenar muita informação em série Esta informação, em situações práticas, é usualmente dividida
Leia maisCIC 111 Análise e Projeto de Algoritmos II
CIC 111 Análise e Projeto de Algoritmos II Prof. Roberto Affonso da Costa Junior Universidade Federal de Itajubá AULA 22 Combinatorics Binomial coefficients Catalan numbers Inclusion-exclusion Burnside
Leia maisPedro Vasconcelos DCC/FCUP. Programação Funcional 5 a Aula Definições recursivas
Programação Funcional 5 a Aula Definições recursivas Pedro Vasconcelos DCC/FCUP 2014 Definições usando outras funções Podemos definir funções usando outras previamente definidas (e.g. do prelúdio-padrão).
Leia maisProcessamento da Informação
Processamento da Informação Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Tipos Padrões 2. Variáveis Auxiliares 3. Condicionais 1 Tipos Padrões Tipos Padrões A linguagem Python fornece
Leia maisProgramação 2. Trabalho Prático P4A. Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em ambiente Linux.
Mestrado Integrado em Engenharia Electrotécnica e de Computadores 2006/2007 Programação 2 2º Semestre Trabalho Prático P4A Efectue as tarefas de programação descritas abaixo, usando a linguagem C++ em
Leia maisAED2 - Aulas 06 e 07 Árvores AVL e rubro-negras
AED2 - Aulas 06 e 07 Árvores AVL e rubro-negras Árvores AVL AVL vem dos nomes dos seus inventores: Adelson-Velsky and Landis. Definições: a altura de uma subárvore é o comprimento do caminho mais longo
Leia maisEstruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisInteligência Artificial
Instituto Politécnico de Setúbal Escola Superior de Tecnologia de Setúbal Departamento de Sistemas e Informática Guia de Exercícios Complementares de Lisp Inteligência Artificial Prof Joaquim Filipe Eng.
Leia maisUniversidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C
Universidade Federal de Uberlândia - UFU Faculdade de Computação - FACOM Lista de exercícios de programação em linguagem C Exercícios: Funções 1. Crie uma função que recebe como parâmetro um número inteiro
Leia maisÁrvore binária - definição
Árvore binária - definição árvore binária: conjunto finito de nós Æ (árvore vazia) {raiz, sub-árvore esquerda, sub-árvore direita}, onde sae e sad são conjuntos disjuntos Æ ou raiz /* nó da árvore binária
Leia maisAula 15: Pesquisa em Memória Primária. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP
Aula 15: Pesquisa em Memória Primária Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Pesquisa em Memória Primária Introdução - Conceitos Básicos Pesquisa Sequencial Pesquisa Binária Árvores de
Leia maisINF 1620 P3-06/12/03 Questão 1 Nome:
INF 1620 P3-06/12/03 Questão 1 Considere um cadastro com as médias por disciplina dos alunos de uma universidade. Esse cadastro é originalmente armazenado em um arquivo texto que contém, para cada disciplina,
Leia maisProgramação II. Busca em Vetor (search) Bruno Feijó Dept. de Informática, PUC-Rio
Programação II Busca em Vetor (search) Bruno Feijó Dept. de Informática, PUC-Rio Busca em Vetor Problema: Entrada: vetor v com n elementos elemento d a procurar Saída m se o elemento procurado está em
Leia mais1. Proponha algoritmos para: a. Calcular a altura dos nós de uma árvore binária dada, armazenando o valor da altura no nó.
1. Proponha algoritmos para: a. Calcular a altura dos nós de uma árvore binária dada, armazenando o valor da altura no nó. b. Achar o maior elemento (campo numérico) de uma árvore binária dada. c. Trocar
Leia maisBubble Sort. Tempo total O(n 2 )
Bubble Sort Considere uma seqüência de n elementos que se deseja ordenar. O método da bolha resolve esse problema através de várias passagens sobre a seqüência Não é um algoritmo eficiente, é estudado
Leia maisArvores, Percursos não recursivos, Arvores heterogêneas. Aula 19
Arvores, Percursos não recursivos, Arvores heterogêneas Aula 19 Arvores binárias encadeadas Percorrer uma árvore é uma operação muito comum e seria útil encontrar um método mais eficiente para implementar
Leia maisTabelas 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,
Leia maisFundamentos de Algoritmos - Aula 5
Fundamentos de Algoritmos - Aula 5 INF05008 2006/1 Expressões e Funções Condicionais Para diversos problemas, programa deve lidar com situações diferentes de formas diferentes jogo deve determinar de velocidade
Leia maisMétodos de Busca Parte 1
Métodos de Busca Parte 1 Introdução à Ciência da Computação II Prof. Diego Raphael Amancio Baseado no material do Prof. Rudinei Goularte e do Prof. Thiago A. S. Pardo Introdução Importância em estudar
Leia maisLista Encadeada (Linked List)
Lista Encadeada (Linked List) As listas ou listas encadeadas são a estrutura de dados mais simples concebível excetuando-se naturalmente os arrays. Listas encadeadas nada mais são que uma seqüência de
Leia maisÁRVORES ABB (ÁRVORES BINÁRIAS DE BUSCAS) Sérgio Carlos Portari Júnior
ÁRVORES ABB (ÁRVORES BINÁRIAS DE BUSCAS) Sérgio Carlos Portari Júnior Árvore Binária de Busca (ABB) o valor associado à raiz é sempre maior que o valor associado a qualquer nó da sub-árvore à esquerda
Leia maisFicha 1 Noções de sequência e decisão em algoritmia
Ficha 1 Noções de sequência e decisão em algoritmia 1. Ler uma temperatura em Celsius e converter para Fahrenheit. Elabore o algoritmo e especifique as estruturas de dados necessárias para a resolução
Leia maisAlgoritmos e Estrutura de Dados
Algoritmos e Estrutura de Dados Fabrício Olivetti de França 02 de Fevereiro de 2019 Topics 1. Algoritmos de Ordenação Eficientes 1 Algoritmos de Ordenação Eficientes Heap Sort Na primeira aula de ordenação
Leia maisFabrício J. Barth. BandTec - Faculdade de Tecnologia Bandeirantes
Árvores Fabrício J. Barth BandTec - Faculdade de Tecnologia Bandeirantes Setembro de 2011 Tópicos Introdução Árvores binárias Implementação em Java Ordens de percurso em árvores binárias Altura de uma
Leia maisEstruturas de Dados Algoritmos de Ordenação
Estruturas de Dados Prof. Eduardo Alchieri (introdução) Considere uma sequência arbitrária S = {s1, s2, s3,...sn} composta por n 0 elementos retirados do conjunto universo U O objetivo da ordenação é arrumar
Leia maisExercícios TVC2 PARTE I:
Exercícios TVC2 Esta lista de exercícios foi elaborada como preparatório para a segunda avaliação que será realizada em breve, abordando repetições, vetores numéricos e strings. Algumas instruções: Desenvolva
Leia maisINF 1620 P4-01/07/08 Questão 1 Nome:
INF 1620 P4-01/07/08 Questão 1 Escreva uma função em C que receba duas strings, cujos caracteres estão ordenados em ordem crescente, e retorne uma nova string alocada dinamicamente, que contém todos os
Leia maisTrabalho: Algoritmos de Busca e Ordenação. 1 Introdução. Prof. Bruno Emerson Gurgel Gomes IFRN - Câmpus Currais Novos. 31 de outubro de 2012
Trabalho: Algoritmos de Busca e Ordenação Prof. Bruno Emerson Gurgel Gomes IFRN - Câmpus Currais Novos 31 de outubro de 2012 1 Introdução Os algoritmos de busca e de ordenação compreendem um conjunto de
Leia maisMódulo 16 - Ordenação
Estruturas de Dados Módulo 16 - Ordenação 15/05/2013 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus
Leia maisHeaps. Estrutura de Dados. Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35
Heaps Estrutura de Dados Universidade Federal de Juiz de Fora Departamento de Ciência da Computação 1 / 35 Conteúdo Introdução Definição de Heap Heap Binária Implementação com vetor Fila de Prioridades
Leia maisÁrvores Binárias de Busca
Árvores AVL Árvores Binárias de Busca Altura de uma árvore binária (AB): igual à profundidade, ou nível máximo, de suas folhas A eficiência da busca em árvore depende do seu balanceamento Algoritmos de
Leia maisINSTITUTO 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
Leia mais