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

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

Download "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"

Transcrição

1 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: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I E J Dados de identificação do Tutor: Nome: Login: CA: Cidade: UF INSTRUÇÕES: A prova está composta de 10 questões de A a J, e 4 alternativas enumeradas de 1 a 4. Utilize caneta esferográfica azul ou preta para preenchimento do cartão-resposta. O cartão-resposta deve ser preenchido, assinado, destacado e entregue ao Tutor. Questões rasuradas serão anuladas. Sem o devido preenchimento do CAMPO DE IDENTIFICAÇÃO, o cartão-resposta não terá validade. Somente terão acesso às notas lançadas no boletim os acadêmicos regularmente matriculados. Os acadêmicos têm três dias após a divulgação do gabarito oficial para requerer revisão de questões (recursos). Devem constar os seguintes dados para análise: Tipo da avaliação, Etapa, identificação da questão e justificativa do pedido. Mais esclarecimentos acerca dos procedimentos para pedidos de Recursos acessem a página Assinatura do acadêmico Assinatura do Tutor, / /2008 Local 1

2 ESTRUTURAS DE DADOS PROFESSORES: ALEXANDRE ROSSINI CARLOS HENRIQUE CORRÊA TOLENTINO ALEX COELHO MARCO ANTONIO YZAAC GONÇALVES A. Analise a função principal e a estrutura de fila apresentada no exemplo a seguir, e considerando as funções enqueue e dequeue para inserção e remoção respectivamente, assinale a alternativa INCORRETA. 1 struct fila{ 2 int inicio; 3 int final; 4 int conteudo[10]; 5 }; 6 int main(){ 7 int i, dados; 8 struct fila nova_fila; 9 nova_fila.inicio=0; 10 nova_fila.final=0; for(i=0;i < 10;i++){ 13 enqueue(&nova_fila, i); 14 if(i%2 == 0 ){ 15 dados = dequeue(&nova_fila); 16 printf("removido\n"); 17 printf("%d\n", dados); 18 } 19 } 20 printf("%d", nova_fila.inicio); 21 system("pause"); 22 } Observe as afirmações a seguir e assinale a que for verdadeira. 1. O valor impresso para o inicio da fila será 5; 2. A fila implementada consiste em uma fila com alocação seqüencial de memória; 3. São excluídos da fila todos os elementos no qual o resultado do resto da divisão de seu conteúdo por dois seja igual a zero; 4. A cada iteração do laço for são inseridos na fila, como conteúdo, os valores da variável i. COMENTÁRIO: A alternativa verdadeira para a questão (a que satisfaz o enunciado), ou seja, a INCORRETA é a alternativa 3. Analisando o exemplo vemos que, a cada iteração do laço FOR, o valor da variável de controle i é inserido na fila (alternativa 4 é CORRETA), fazendo com que, por coincidência, o conteúdo das posições da fila sejam preenchidos com esses valores. Em seguida, é verificado se o resto da divisão da variável de controle i e não o conteúdo da fila por 2 é igual a zero, caso seja verdade, é executada a operação dequeue (alternativa 3 INCORRETA), o elemento do início da fila é removido e apresentado na tela. A seqüência de entrada dos elementos é 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Considerando que 5 elementos serão removidos (observe que a variável de controle i assume valor par em 5 situações) o primeiro elemento da fila será 5 (alternativa 1 é CORRETA). Como podemos perceber na declaração da estrutura 2

3 fila, um vetor é utilizado para armazenar os elementos, o que caracteriza alocação seqüencial de memória (alternativa 2 CORRETA). B. Analise o código a seguir, no qual são apresentadas as funções de uma fila e sua estrutura, e escolha a alternativa CORRETA. Considere que os campos da estrutura são inicializados no programa principal. 1 typedef struct fila{ 2 int inicio; 3 int ocupado; 4 int final; 5 int conteudo[4]; 6 }fila; 7 void enqueue(fila *f, int dados){ 8 if(f->ocupado == 4) 9 printf("\n!!!!!!fila cheia!!!!!!!!\n"); 10 else { 11 f->conteudo[f->final] = dados; 12 f->final++; 13 f->ocupado++; 14 if(f->final > 3) 15 f->final=0; 16 } 17 } 18 int dequeue(fila *f){ 19 if( f->ocupado == 0 ) 20 printf("\n!!!!!!!!!fila vazia!!!!!!!!!!!!!!\n"); 21 else{ 22 f->inicio++; 23 if (f->inicio==4) 24 f->inicio=0; 25 f->ocupado- -; 26 return f->conteudo[f->inicio-1]; 27 } 28 } 1. Ocorrerá um erro na função enqueue, linha O código consiste na implementação de uma fila circular. 3. A função dequeue remove elementos a partir do final da fila. 4. Nenhuma das alternativas está correta. COMENTÁRIO: A alternativa correta da questão é a de número 2. A alternativa 1 está INCORRETA, pois na linha 11 o valor armazenado no campo final é usado como índice para referenciar uma posição no vetor que armazena os elementos. Sendo um valor inteiro, não há problemas com a declaração. A alternativa 2 está CORRETA. Observe as linhas e e perceba que, sempre que o início ou o final da fila assume um valor maior que 3 (última posição do vetor), eles recebem o valor 0, implementando o princípio da circularidade nessa fila. A alternativa 3 está INCORRETA, pois em qualquer fila a operação dequeue remove um elemento do INÍCIO da fila. A alternativa 4 é INCORRETA, já que a a alternativa 2 é correta. 3

4 C. Classifique em (V)erdadeira ou (F)alsa as afirmações sobre lista simplesmente encadeada, e escolha a opção que apresenta a seqüência CORRETA: I Possui apenas um ponteiro para o próximo nó da lista. II Utiliza somente a quantidade de memória necessária. III Possui uma estrutura do tipo FIFO. 1. V, V, F 2. F, F, F 3. V, V, V 4. F, F, V COMENTÁRIO: A resposta correta é a alternativa 1. A afirmativa I é verdadeira e segundo Forbellone e Eberspacher (2005, p. 153) e exposto na apostila (página 58) lista simplesmente encadeada é definida como um conjunto de elementos individualizados em que cada um referencia um outro elemento distinto como sucessor. Nessa definição está claro que há somente um encadeamento (realizado por apenas um ponteiro) que referencia (aponta) um elemento (nó) sucessor (próximo). Além disso, na página 61 da apostila é apresentada a estrutura (struct) do nó de uma lista simplesmente encadeada, o que confirma o explicado anteriormente. A afirmativa II é verdadeira porque, de acordo com o algoritmo de inserção desta estrutura, aloca-se um novo nó somente quando da inserção de um elemento nela. Se aloca-se memória somente durante a inserção, então ela utiliza somente a quantidade de memória necessária. A afirmativa III é falsa, isso porque, de acordo com o segundo parágrafo da página 48 da apostila, a estrutura do tipo FIFO (First-In/First-Out Primeiro a entrar/primeiro a sair) é a fila e não a lista simplesmente encadeada. D. Considere as alternativas a seguir sobre lista ordenada simplesmente encadeada e assinale a INCORRETA: 1. São funções de uma lista ordenada simplesmente encadeada a inserção, remoção e busca. 2. NULL é usado para indicar o final de uma lista. 3. Na remoção, na existência de elementos repetidos, será sempre excluído o último elemento da lista. 4. Na existência de elementos repetidos a função busca pode retorna a posição da primeira ocorrência do elemento procurado. COMENTÁRIO: A resposta a ser assinalada é a alternativa 3. Como relatado na apostila no terceiro parágrafo da página 61, para uma lista simplesmente encadeada costuma-se implementar três operações básicas, sendo a Ins, Rem e Find, que são responsáveis pela inserção, remoção e busca, respectivamente. Portanto, a assertiva 1 está correta, ou seja, não é a resposta esperada para a questão, já que procura-se pela alternativa incorreta. A assertiva 2 indica que NULL é utilizado para caracterizar o final de uma lista. A afirmação é verdadeira e pode ser comprovada observando os últimos parágrafos da página 61 da apostila. Assim, essa também não é a alternativa correta para a questão. A assertiva 4 faz alusão à busca de dados em uma lista que possui elementos repetidos. Tratando-se de uma função de busca, a idéia é retornar positivamente quando um elemento procurado é encontrado. Esse retorno positivo pode ser caracterizado com a posição do elemento procurado. Uma das maneiras de otimizar a busca é retornar positivamente assim que encontrar uma ocorrência do elemento procurado, ou seja, na primeira ocorrência do elemento. Assim, a assertiva 4 está correta e não é a opção adequada para resolução da questão. A assertiva 3, faz a afirmação de que na existência de elementos repetidos, sempre será excluído o último elemento da lista (independente de ser o procurado), o que não faz sentido, pois em uma 4

5 lista a remoção ocorre em um elemento determinado e previamente procurado. Por tanto, a afirmação de que sempre será excluído o último elemento de uma lista no caso de ocorrer repetição de elementos é incorreta, ou seja, essa é a alternativa adequada para questão. E. Ao longo da disciplina diversas estruturas de dados foram estudas e é de fundamental importância conhecer as particularidades de cada uma das estruturas. Considerando o trecho de código a seguir, efetue a associação do código com seu respectivo tipo de estrutura de dado, sua funcionalidade e assinale a alternativa CORRETA. Considere que a verificação se a estrutura está ou não vazia é realizada no bloco principal do programa #define MAX 10 typedef struct estrutura{ int inicio; int final; int conteudo[10]; }nova_estrutura; void funcao(nova_estrutura *estruturalocal) { int i; for (i=1; i<estruturalocal->final; i++) estruturalocal->conteudo[i-1]=estruturalocal->conteudo[i]; estruturalocal->final- -; } 1. O trecho de código realiza a inserção em uma fila circular. 2. O trecho de código realiza a inserção em uma pilha. 3. O trecho de código realiza a remoção em uma fila. 4. O trecho de código realiza a inserção em uma fila. COMENTÁRIO: A resposta correta é a alternativa 3, ou seja, é realizada a remoção do primeiro elemento da fila, sendo que os elementos seguintes ocupam novas posições na fila, sendo deslocados uma posição adiante. Analisando a função funcao o laço for existente é o responsável por percorrer toda a fila, sendo que o inicio do processo é realizado a partir do segundo elemento da fila já que a variável i é inicializada com o valor 1. Assim na primeira iteração na fila seqüencial o elemento da posição 0 será sobrescrito pelo da posição 1. A cada iteração do laço o elemento da posição i sobrescreve o elemento da posição anterior, no caso a posição i-1. Após ter sido percorrido todo o loop o elemento que indica o final da fila é decrementado, de maneira a indicar a nova posição do último elemento. F. Observe a seguinte função em linguagem C e assinale a alternativa INCORRETA int busca(int vetor[30], int n) { int i=0; while(i<30) { if(vetor[i] == n) return i; i++; } 5

6 10 11 } return -1; 1. Esta função implementa um método de busca mais eficiente, em todos os casos, do que a busca binária quando aplicadas sobre um vetor ordenado. 2. Se usarmos esta função para procurar um elemento que não se encontra no vetor, mesmo o vetor estando ordenado, esta função irá percorrer todo o vetor. 3. Esta função implementa uma busca seqüencial por um elemento n em um vetor de, no máximo, 30 posições. 4. O método de busca implementado na função é mais adequado do que a busca binária quando aplicadas a vetores não ordenados. COMENTÁRIO: A alternativa a ser assinalada é a de número 1. Assim, a alternativa 1 está INCORRETA, já que a busca implementada na função seria menos eficiente que uma busca binária sobre um vetor ordenado. Por exemplo, se o elemento estivesse localizado após a metade do vetor, sendo que para a localização com um busca binária seriam necessários, no pior caso, 6 passos, enquanto no pior caso de uma busca seqüencial igual a realizada na funcao em seu pior caso serão necessário 30 passos, correspondendo ao tamanho do vetor, ou seja, as interações seriam reduzidas drasticamente. A alternativa 2 está correta pois, ordenado ou desordenado, caso o elemento não esteja no vetor isso só será constatado quando a busca tiver ocorrido sobre todas as posições do vetor, já que ele só irá para caso o elemento seja encontrado. A alternativa 3 também está correta, uma vez que é realizada uma busca do elemento n passado como argumento na linha 1, sobre um vetor de 30 posições que também foi passado como argumento na mesma linha 1. A alternativa 4 também está correta, pois caso o vetor não esteja ordenado não há como determinar qual das ramificações devem ser percorridas pela busca binária. G. Relacionando métodos de busca e ordenação com listas encadeadas, analise as seguintes afirmações e aponte a alternativa CORRETA. 1. Em listas ordenadas simplesmente encadeadas, é natural que os elementos sejam inseridos ordenadamente, não necessitando aplicar um algoritmo específico para ordenação. 2. Para ordenar uma lista simplesmente encadeada, o método QuickSort é o mais adequado uma vez que percorre menos vezes a lista, resultando em menor tempo de processamento. 3. Listas simplesmente encadeadas são ordenadas de maneira mais eficiente pelo método BubbleSort do que pelo Quicksort. 4. Listas duplamente encadeadas são geralmente ordenadas utilizando métodos binários de ordenação. COMENTÁRIO: A resposta da questão é a de número 1. A alternativa 1 está correta, pois as listas ordenadas simplesmente encadeadas não necessitam de aplicação de nenhum método de ordenação já que seus elementos são inseridos em ordem adequada. Esta técnica é chamada InsertionSort. As assertivas 2 e 3 não estão corretas, pois não se aplica métodos de ordenação por partição, como o QuickSort, às estruturas de dados não indexadas. A assertiva 4 não é correta, pois não existe método binário de ordenação. H. Analise as seguintes afirmações e assinale a INCORRETA. 1. O método BubbleSort é um dos métodos de ordenação mais simples, contudo o seu desempenho é considerado ruim. Porém, em casos específicos, por exemplo, quando o conjunto está quase 6

7 completamente ordenado, este método pode apresentar bons resultados em termos de tempo de processamento. 2. O método de ordenação BubbleSort é baseado na idéia de fazer sucessivas varreduras no conjunto de valores e realizar trocas de posição entre os elementos. Um elevado número de trocas pode tornar a ordenação mais lenta. 3. O método de ordenação QuickSort é essencialmente um método recursivo. 4. Os métodos de ordenação BubblesSort e QuickSort são adequados somente quando os conjuntos a serem ordenados tiverem grande quantidade de elementos. COMENTÁRIO: A resposta correta é a alternativa 4. A alternativa 1 é verdadeira e sua veracidade pode ser verificada analisando as duas afirmações contidas nela. A primeira afirmação O método BubbleSort é um dos métodos de ordenação mais simples, contudo o seu desempenho é considerado ruim pode ser encontrado no primeiro parágrafo da página 81 da apostila. A segunda afirmação também é verdade segundo o primeiro parágrafo da página 84 da apostila o algoritmo (bubblesort) vai rodar um pouco mais rápido quando forem realizadas trocas. Por exemplo, isso ocorre caso o vetor já esteja ordenado (PREISS, 2000). A alternativa 2 é verdadeira e pode ser constatada que a idéia do bubblesort é de fazer sucessivas varreduras no segundo parágrafo da página 81 da apostila. Contrapondo-se a afirmação de Preiss, citada anteriormente, é verdade que um elevado número de trocas pode tornar a ordenação mais lenta. A alternativa 3 também é verdadeira, pois o quarto passo do algoritmo quicksort (página 84) indica realize o quicksort recursivamente para as partições [...]. Por fim, a alternativa 4 é falsa porque bubblesort e quicksort podem ser aplicados para conjuntos a serem ordenados com uma pequena quantidade de elementos. Para confirmar isso, nas páginas 81 e 85 da apostila existe um conjunto com 10 elementos sendo ordenado com o bubblesort e quicksort, respectivamente. I. Tratando-se de listas ordenadas duplamente encadeadas alguns cuidados devem ser tomados ao realizar a remoção de um elemento. Dentre as considerações expostas a seguir, assinale a alternativa que NÃO faz referência às considerações necessárias à remoção de um elemento de uma lista ordenada duplamente encadeada. 1. Verificar se a lista ordenada está vazia. 2. Verificar se o elemento a ser removido é menor que o primeiro elemento da lista ordenada. 3. Verificar se o elemento a ser removido é maior que o primeiro elemento. 4. Verificar se a lista ordenada está cheia. COMENTÁRIO: A alternativa correta para a questão é a assertiva 4. As opções 1, 2 e 3 estão presentes na apostila na página 73. Os cuidados necessários para efetuar a remoção de um elemento de uma lista ordenada duplamente encadeada são: verificar se a lista está vazia, ou seja, não é possível remover um elemento de onde não há elementos; verificar se o elemento a ser removido é menor que o primeiro elemento da lista. Esse é um caso especial pois passa a ser necessário fazer a readequação do local para onde o ponteiro externo que armazena o início da lista para o novo início; verificar se o elemento a ser removido é maior que o primeiro elemento é outro cuidado, e nesse caso, faz-se necessário percorrer a lista em busca do elemento a ser removido; a assertiva 4 não está correta, pois, teoricamente, não existe lista encadeada cheia e no caso de não ser uma lista encadeada, não justificaria verificar se a lista está cheia se a operação a ser executada é de remoção. 7

8 J. Considerando o trecho de código fonte transcrito a seguir, analise-o e assinale a alternativa CORRETA. Considere que o ponteiro externo lista aponta para o meio da lista (nó central). 1. no *temp=(no*)malloc(sizeof(no)); 2. temp->conteudo=elemento; 3. no *auxiliar=lista; 4. if (temp->conteudo < auxiliar->conteudo) 5. { 6. while (temp->conteudo < auxiliar->conteudo) 7. auxiliar=auxiliar->anterior; 8. temp->proximo=auxiliar->proximo; 9. temp->anterior=auxiliar; 10. auxiliar->proximo->anterior=temp; 11. auxiliar->proximo=temp; 12. } 13. else 14. { 15. while (temp->conteudo > auxiliar->conteudo) 16. auxiliar=auxiliar->proximo; 17. temp->proximo=auxiliar; 18. temp->anterior=auxiliar->anterior; 19. auxiliar->anterior->proximo=temp; 20. auxiliar->anterior=temp; 21. } 1. Caso o teste condicional existente na linha 4 do trecho de código seja verdadeiro, ocorrerá a remoção do menor valor presente na lista. 2. O desvio condicional composto da linha 4 faz com que a navegação na lista ocorra em direção ao ponto apropriado para inserção de um novo nó à lista. 3. O trecho de código em questão faz referência ao procedimento de remoção de um nó em uma lista ordenada duplamente encadeada. 4. A linha 19 do trecho de código indica que o nó novo passa a ser o anterior do nó próximo do auxiliar. COMENTÁRIO: A resposta correta é a alternativa 2. A alternativa 1 é falsa porque o trecho de código é da função de inserção e não remoção. A alternativa 2 é verdadeira porque o desvio condicional composto (if...else) da linha 4 indica se deve-se percorrer, partindo-se do meio, para os nós anteriores (entre as linhas 6 e 11) ou próximos (entre as linhas 15 e 20). A alternativa 3 é falsa porque, apesar de ser uma lista ordenada duplamente encadeada, o trecho de código não é de remoção, mas de inserção. A alternativa 4 é falsa porque a linha 19 indica que o próximo nó apontado pelo nó anterior ao auxiliar passa a ser temp e não o nó novo passar a ser o anterior do nó próximo do auxiliar, como indica a alternativa. Coordenação do curso de Superior em Tecnologia em Análise e Desenvolvimento de Sistemas UNITINS - EAD 8

Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF Assinatura: CARTÃO RESPOSTA

Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF Assinatura: CARTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 4º PERÍODO 7º MÓDULO AVALIAÇÃO A2 DATA 08/10/2009 ESTATÍSTICA 2009/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF Assinatura: CARTÃO

Leia mais

CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I

CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 2º PERÍODO - 4º MÓDULO AVALIAÇÃO MP1 DATA 06/11/2008 PROGRAMAÇÃO Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO

Leia mais

Prova 2 PMR2300 1o. semestre 2015 Prof. Thiago Martins

Prova 2 PMR2300 1o. semestre 2015 Prof. Thiago Martins Prova PMR00 o. semestre 0 Prof. Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço.. ( pontos) Um heap binário é uma árvore binária completa (todos os níveis exceto o último

Leia mais

Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 024/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 024/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: «Nome» INSCRIÇÃO: «Inscrição» Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome

Leia mais

Estrutura de Dados. Carlos Eduardo Batista. Centro de Informática - UFPB

Estrutura 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 Listas e Filas Estruturas de Dados 2 Estrututuras de dados lineares Pilhas (stack) Estrutura de dados onde a inserção

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA CURSO - TADS TURMA 2008.2 4 PERÍODO 4 MÓDULO AVALIAÇÃO MP1 DATA 05/11/2008 BANCO DE DADOS 2008/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO

Leia mais

Edital de Seleção 032/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 032/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 032/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

Edital de Seleção 053/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 053/2016 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 053/2016 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

Edital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 023/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 023/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE 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 mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERSIDADE DA BEIRA INTERIOR Programação II 1º Semestre Frequência 2 Resolução 07/01/2019 1. [1,25 val] - Análise de Complexidade dos Algoritmos Considere o seguinte bloco de código em linguagem C: for

Leia mais

Programação II. Listas Encadeadas (Linked Lists) Bruno Feijó Dept. de Informática, PUC-Rio

Programação II. Listas Encadeadas (Linked Lists) Bruno Feijó Dept. de Informática, PUC-Rio Programação II Listas Encadeadas (Linked Lists) Bruno Feijó Dept. de Informática, PUC-Rio Vetores vs Estruturas Dinâmicas Vetores (arrays): Ocupa um espaço contíguo de memória Permite acesso randômico

Leia mais

Aula 14 Listas Duplamente Encadeadas. prof Leticia Winkler

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

Leia mais

Listas Lineares. continuando...

Listas Lineares. continuando... Listas Lineares continuando... 1 Listas! relembrando: listas lineares agrupa informações referentes aum conjunto de elementos que, de alguma forma, se relacionam entre si! Uma lista linear ou está vazia,

Leia mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERSIDADE DA BEIRA INTERIOR Algoritmos e Estruturas de Dados - Bioengenharia 2º Semestre Frequência Resolução 19/maio/2015 A. [3.5 val] Algoritmos de ordenação e de pesquisa Considere-se as seguintes

Leia mais

Fila e Deque. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.

Fila e Deque. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. Fila e Deque SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências

Leia mais

Instituto de C. Linguagem C: Listas. Luis Martí Instituto de Computação Universidade Federal Fluminense -

Instituto de C. Linguagem C: Listas. Luis Martí Instituto de Computação Universidade Federal Fluminense - Instituto de C Linguagem C: Listas Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Listas Encadeadas Definição Funções básicas Tópicos Principais

Leia mais

PRIMEIRA AVALIAÇÃO IDENTIFICAÇÃO. Nome: 22/09/2010

PRIMEIRA AVALIAÇÃO IDENTIFICAÇÃO. Nome: 22/09/2010 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA Bacharelado em Ciência da Computação e Engenharia da Computação INF 01203 Estruturas de Dados Profa. Renata Galante (galante@inf.ufrgs.br

Leia mais

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

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

Leia mais

Métodos de Ordenação Parte I

Métodos de Ordenação Parte I Estrutura de Dados II Métodos de Ordenação Parte I Prof a Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Material baseado nos materiais da Prof a Ana Eliza e Prof. Robson Lins Rearranjar

Leia mais

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

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

Leia mais

Busca em Memória. Secundária

Busca em Memória. Secundária UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Busca em Memória Secundária e Gomes da Costa yandre@din.uem.br 1 Busca de um item em uma massa de dados que não cabe na memória principal; Procura-se

Leia mais

Aula 3 Listas Lineares Sequenciais Ordenadas. prof Leticia Winkler

Aula 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

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

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

Leia mais

Estruturas 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 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 mais

Estruturas de Dados Filas

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

Leia mais

Listas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof.

Listas Estáticas. SCC Algoritmos e Estruturas de Dados I. Prof. Fernando V. Paulovich. *Baseado no material do Prof. Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de

Leia mais

Instituto 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 - 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 mais

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

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

Leia mais

Tabelas Hash O Que é uma Tabela Hash? O Que é uma Tabela Hash? O Que é uma Tabela Hash? Inserindo um Novo Registro. O Que é uma Tabela Hash?

Tabelas Hash O Que é uma Tabela Hash? O Que é uma Tabela Hash? O Que é uma Tabela Hash? Inserindo um Novo Registro. O Que é uma Tabela Hash? Tabelas Hash O Que é uma Tabela Hash? Nesta aula são discutidos modos de armazenar informações em um vetor, e depois procurar por uma informação Tabelas Hash constituem uma abordagem comum para o problema

Leia mais

Método de ordenação - objetivos:

Mé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 mais

Algoritmos e Estruturas de Dados II IEC013

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

Leia mais

Prova de Recuperação PMR3201 1o. semestre 2017 Prof. Thiago Martins

Prova de Recuperação PMR3201 1o. semestre 2017 Prof. Thiago Martins Prova de Recuperação PMR3201 1o. semestre 2017 Prof. Thiago Martins Instruções: Escreva o nome e o número USP na folha de papel almaço. Numere cada página. Indique o total de páginas na primeira página.

Leia mais

Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou

Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou Tabelas de hash Acabamos de estudar como implementar uma tabela hashing aberta e estudaremos agora como implementar uma tabela hashing fechada ou também denominada de tabela hashing com endereçamento aberto.

Leia mais

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

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

Leia mais

A regra de acesso aos dados de uma fila é a seguinte: O primeiro elemento que entra (na fila) é o primeiro que sai (FIFO first in, first out).

A regra de acesso aos dados de uma fila é a seguinte: O primeiro elemento que entra (na fila) é o primeiro que sai (FIFO first in, first out). Fila Algumas aplicações impõem regras de acesso às informações armazenados em estruturas de dados, restringindo como os dados são inseridos e removidos da estrutura. A fila, também conhecida como QUEUE,

Leia mais

INF P4-12/12/09 Questão 1 Nome:

INF P4-12/12/09 Questão 1 Nome: INF 1007 - P4-12/12/09 Questão 1 QUESTÃO OBRIGATÓRIA [Valor: 2,5 pontos] Escreva um programa completo em C que leia do teclado um caractere e uma cadeia de caracteres e escreva quantas vezes aquele caractere

Leia mais

1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador.

1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador. 1. Selecione a Estrutura de Dados que melhor representa os diretórios ou pastas de arquivos do computador. 1) Fila 2) Pilha 3) Árvore 4) Lista 5) Grafo 2. Selecione a Estrutura de Dados que melhor representa

Leia mais

Fila e Deque. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista

Fila e Deque. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista Fila e Deque SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências

Leia mais

Métodos Computacionais. Listas Encadeadas

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

Leia mais

Universidade Federal do Ma Curso de Ciência da Computação

Universidade Federal do Ma Curso de Ciência da Computação Universidade Federal do Ma Curso de Ciência da Computação Estrutura de Dados Prof. Anselmo C. de Paiva Depto de Informática Limitações dos vetores Vetores Simples, Rápidos Mas, é necessário especificar

Leia mais

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

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

Leia mais

Algoritmos e Estrutura de Dados II. Árvore. Prof a Karina Oliveira.

Algoritmos e Estrutura de Dados II. Árvore. Prof a Karina Oliveira. Algoritmos e Estrutura de Dados II Árvore Prof a Karina Oliveira kkco@dei.unicap.br Introdução Estruturas de dados lineares (pilha, fila) são estruturas que guardam coleções de elementos que são acessados

Leia mais

Edital de Seleção 055/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 055/2017 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 055/2017 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

ALGORITMOS DE ORDENAÇÃO RECURSIVOS

ALGORITMOS DE ORDENAÇÃO RECURSIVOS 1/14 ALGORITMOS DE ORDENAÇÃO RECURSIVOS Ordenação rápida ( Quicksort ) 2/14 Ordenação rápida ( Quicksort ) Ideia - Baseia-se num princípio muito simples que, quando aplicado recursivamente, acaba por ordenar

Leia mais

Lista de Exercícios sobre Listas Implementadas por Encadeamento

Lista de Exercícios sobre Listas Implementadas por Encadeamento Lista de Exercícios sobre Listas Implementadas por Encadeamento 1) Se você tem de escolher entre uma representação por lista encadeada ou uma representação usando posições contíguas de memória para um

Leia mais

Matrizes Esparsas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista

Matrizes Esparsas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista Matrizes Esparsas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto

Leia mais

1. Listas sequenciais versus listas ligadas. Lista sequencial

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

Leia mais

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

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

Leia mais

REVISÃO DE PILHAS E FILAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

REVISÃO DE PILHAS E FILAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REVISÃO DE PILHAS E FILAS Vanessa Braganholo Estruturas de Dados e Seus Algoritmos PILHAS E FILAS São tipos especiais de listas com disciplina restrita de acesso Acesso Consulta Inserção Remoção Disciplina

Leia mais

Filas Exemplo de Aplicação

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

Leia mais

Heaps. 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 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

INF 1620 P2-01/11/03 Questão 1 Nome:

INF 1620 P2-01/11/03 Questão 1 Nome: INF 1620 P2-01/11/03 Questão 1 Considere a implementação de uma lista encadeada para armazenar as notas dos alunos de uma turma dada pelo tipo abaixo: struct lista { char nome[81]; int mat; float p1, p2,

Leia mais

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

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

Leia mais

Módulo 10 Listas Encadeadas

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

Leia mais

Lista de Exercícios 04

Lista de Exercícios 04 Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Disciplina: BCC202 - Estruturas de Dados I Professor: Túlio Toffolo (www.decom.ufop.br/toffolo)

Leia mais

Árvores. ! utilizada em muitas aplicações. ! modela uma hierarquia entre elementos. ! O conceito de árvores está diretamente ligado à recursão

Á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 mais

DAINF - Departamento de Informática

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

Leia mais

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

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

Leia mais

LP II Estrutura de Dados Estruturas Heterogêneas e Listas Lineares Estáticas. Prof. José Honorato Ferreira Nunes

LP II Estrutura de Dados Estruturas Heterogêneas e Listas Lineares Estáticas. Prof. José Honorato Ferreira Nunes LP II Estrutura de Dados Estruturas Heterogêneas e Listas Lineares Estáticas Prof. José Honorato Ferreira Nunes eu@honorato.eu Estruturas (struct) Ao manusearmos dados muitas vezes deparamos com informações

Leia mais

ÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

ÁRVORES BINÁRIAS DE BUSCA. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ÁRVORES BINÁRIAS DE BUSCA Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REFERÊNCIA Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Cap. 4 INSTITUTO DE COMPUTAÇÃO

Leia mais

ANHANGUERA ESTRUTURA DE DADOS AULA 06 LISTAS CIRCULARES E DUPLAMENTE ENCADEADAS. Prof. Thomás da Costa

ANHANGUERA ESTRUTURA DE DADOS AULA 06 LISTAS CIRCULARES E DUPLAMENTE ENCADEADAS. Prof. Thomás da Costa ANHANGUERA 2015.2 ESTRUTURA DE DADOS AULA 06 Prof. Thomás da Costa thomascosta@aedu.com Vamos ver o PEA : PEA Estrutura de Dados Antes de iniciar a aula, vamos mostrar o andamento do PEA. Vou mostrar as

Leia mais

Estrutura de Dados e Algoritmos e Programação e Computadores II. Aula 4: Listas Estáticas e Dinâmicas

Estrutura de Dados e Algoritmos e Programação e Computadores II. Aula 4: Listas Estáticas e Dinâmicas Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 4: Listas Estáticas e Dinâmicas Listas Estáticas: com Vetores Dinâmicas: Listas Ligadas (com ponteiros) Variáveis e Métodos de Controle:

Leia mais

Listas Estáticas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista

Listas Estáticas. Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista Listas Estáticas SCC0202 - Algoritmos e Estruturas de Dados I Prof. Fernando V. Paulovich *Baseado no material do Prof. Gustavo Batista http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de

Leia mais

Aplicações de listas e outras estruturas. SCC-502 Algoritmos e Estruturas de Dados I

Aplicações de listas e outras estruturas. SCC-502 Algoritmos e Estruturas de Dados I Aplicações de listas e outras estruturas SCC-52 Algoritmos e Estruturas de Dados I Grandes números Problema: lidar com números muito grandes Em C, inteiros (mesmo long int) são limitados Como somar números

Leia mais

Listas Lineares Ordenadas

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

Leia mais

Aluno: Valor Nota Q1 3.0 Q2 2.5 Q3 2.5 Q4 2.0 Total 10.0

Aluno: Valor Nota Q1 3.0 Q2 2.5 Q3 2.5 Q4 2.0 Total 10.0 P4 Programação II 2012.2 Departamento de Informática/PUC- Rio Aluno: Matrícula: Turma: 1. A prova é sem consulta e sem perguntas. A interpretação do enunciado faz parte da prova. 2. A prova deve ser completamente

Leia mais

Introdução Métodos de Busca Parte 1

Introdução Métodos de Busca Parte 1 Introdução Métodos de Busca Parte 1 SCC-201 Introdução à Ciência da Computação II Rosane Minghim 2009 Importância em estudar busca Busca é uma tarefa muito comum em computação? Vários métodos e estruturas

Leia mais

UNIVERSIDADE DA BEIRA INTERIOR

UNIVERSIDADE DA BEIRA INTERIOR UNIVERSIDADE DA BEIRA INTERIOR Algoritmos e Estruturas de Dados - Bioengenharia 2º Semestre Exame Especial Resolução 19/07/2013 A. [4.75 val] Algoritmos de ordenação e de pesquisa (usando memória estática

Leia mais

void ins_ele (ARV_BIN_BUSCA *arv, int v) { if (!(*arv)) maketree(arv, v); else if (v<info(*arv)) /* if (v<(*arv)->info) */ ins_ele(&((*arv)->left),

void ins_ele (ARV_BIN_BUSCA *arv, int v) { if (!(*arv)) maketree(arv, v); else if (v<info(*arv)) /* if (v<(*arv)->info) */ ins_ele(&((*arv)->left), void ins_ele (ARV_BIN_BUSCA *arv, int v) { if (!(*arv)) maketree(arv, v); else if (vleft), v); else ins_ele(&((*arv)->right), v); 466 467 Árvore

Leia mais

Universidade 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 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 mais

Árvores B. Prof. Márcio Bueno. / Fonte: Material da Prof a Ana Eliza Lopes Moura

Árvores B. Prof. Márcio Bueno. / Fonte: Material da Prof a Ana Eliza Lopes Moura Árvores B Prof. Márcio Bueno ed2tarde@marciobueno.com / ed2noite@marciobueno.com Fonte: Material da Prof a Ana Eliza Lopes Moura Situação Problema Memória Principal Volátil e limitada Aplicações Grandes

Leia mais

Carlos Eduardo Batista. Centro de Informática - UFPB

Carlos Eduardo Batista. Centro de Informática - UFPB Estrutura de Dados Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Aritmética de ponteiros em C (continuação) O que acontece na memória? Ponteiro para ponteiro etc. Métodos de pesquisa

Leia mais

CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I E J

CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA A F B G C H D I E J CURSO - TADS TURMA 2008.1 2 PERÍODO 4 MÓDULO AVALIAÇÃO MP3 DATA 18/12/2008 BANCO DE DADOS 2008/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO

Leia mais

Introduçã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 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 mais

Lista Encadeada (Linked List)

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

Leia mais

INF 1010 Estruturas de Dados Avançadas

INF 1010 Estruturas de Dados Avançadas INF 1010 Estruturas de Dados Avançadas Listas de Prioridades e Heaps 1 Listas de Prioridades Em muitas aplicações, dados de uma coleção são acessados por ordem de prioridade A prioridade associada a um

Leia mais

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

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

Leia mais

Filas. Prof. Túlio Toffolo BCC202 Aula 12 Algoritmos e Estruturas de Dados I

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

Leia mais

FILAS. As coisas de que uma fila é feita serão chamadas itens. Os itens podem ser números, strings, structs, etc., etc.

FILAS. As coisas de que uma fila é feita serão chamadas itens. Os itens podem ser números, strings, structs, etc., etc. KATIA LIMA FILAS RAFAEL DA SILVA REIAS JEFFERSON DA SILVA OLIVEIRA RAFFAELA LEITE SANTANA EXISTEM MUITOS EXEMPLOS DE FILA NO MUNDO REAL: UMA FILA DE BANCO; NO PONTO DE ÔNIBUS; UM GRUPO DE CARROS AGUARDANDO

Leia mais

FUNDAÇÃO UNIVERSIDADE DO TOCANTINS TADS 2008/1 1º PERÍODO MP1 1º ETAPA 11/07/2008 MATEMÁTICA PARA COMPUTAÇÃO 2008/1

FUNDAÇÃO UNIVERSIDADE DO TOCANTINS TADS 2008/1 1º PERÍODO MP1 1º ETAPA 11/07/2008 MATEMÁTICA PARA COMPUTAÇÃO 2008/1 FUNDAÇÃO UNIVERSIDADE DO TOCANTINS TADS 2008/1 1º PERÍODO MP1 1º ETAPA 11/07/2008 MATEMÁTICA PARA COMPUTAÇÃO 2008/1 Dados de identificação do Aluno: Nome: Login: Cidade: CA: Data da Prova: / / ORIENTAÇÃO

Leia mais

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

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

Leia mais

1. Faça um programa que leia uma string digitada pelo usuário e salve em um arquivo em branco.

1. 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 mais

LP II Estrutura de Dados

LP II Estrutura de Dados LP II Estrutura de Dados Filas Estáticas Sequenciais Prof. José Honorato Ferreira Nunes honoratonunes@softwarelivre.org http://softwarelivre.org/zenorato/honoratonunes Filas - conceitos É uma lista linear

Leia mais

Listas Ligadas (Encadeadas) Listas Simplesmente Encadeadas

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

Leia mais

Árvores Binárias de Busca

Á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 mais

Listas (Parte 1) Túlio Toffolo BCC202 Aula 09 Algoritmos e Estruturas de Dados I

Listas (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 mais

Prova Substitutiva PMR3201 1o. semestre 2018 Prof. Thiago Martins

Prova Substitutiva PMR3201 1o. semestre 2018 Prof. Thiago Martins Prova Substitutiva PMR301 1o. semestre 018 Prof. Thiago Martins Instruções Escreva o nome e o número USP na folha de papel almaço. Numere cada página. Indique o total de páginas na primeira página. Os

Leia mais

REVISÃO DE C. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

REVISÃO DE C. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REVISÃO DE C Vanessa Braganholo Estruturas de Dados e Seus Algoritmos REVISÃO DE C Ponteiros Alocação dinâmica de memória Recursão INSTITUTO DE COMPUTAÇÃO - UFF 2 PONTEIROS PONTEIROS C permite o armazenamento

Leia mais

Edital de Seleção 016/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões

Edital de Seleção 016/2018 PROPESP/UFAM. Prova de Conhecimento. Caderno de Questões Edital de Seleção 016/2018 PROPESP/UFAM Prova de Conhecimento Caderno de Questões CANDIDATO: INSCRIÇÃO: Assinatura conforme identidade INSTRUÇÕES PARA O CANDIDATO: Verifique o seu nome e o número da sua

Leia mais

Métodos de Busca Parte 1

Mé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 mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 08 Busca em Vetor Edirlei Soares de Lima Busca em Vetor Problema: Entrada: vetor v com n elementos; elemento d a procurar; Saída: m se o elemento procurado

Leia mais

LISTAS LINEARES. Estrutura de Dados

LISTAS LINEARES. Estrutura de Dados LISTAS LINEARES Lista Linear Definição: seqüência de zero ou mais elementos a 1,a 2,...,a n sendo a i elementos de um mesmo tipo n o tamanho da lista linear Propriedade fundamental: os elementos têm relações

Leia mais

Pilhas e Filas Encadeadas. Algoritmos e Estruturas de Dados I

Pilhas e Filas Encadeadas. Algoritmos e Estruturas de Dados I Pilhas e Filas Encadeadas Algoritmos e Estruturas de Dados I Pilha Lista linear: pilha Represente graficamente o funcionamento da pilha, representando a pilha vazia, a entrada e a saída de elementos Quais

Leia mais

INF 1620 P3-02/07/02 Questão 1 Nome:

INF 1620 P3-02/07/02 Questão 1 Nome: INF 1620 P3-02/07/02 Questão 1 Considere um arquivo texto que contém os nomes e as notas dos alunos de uma disciplina. As informações de cada aluno ocupam duas linhas do arquivo: a primeira linha contém

Leia mais