Questões de Concurso Sobre algoritmos e estrutura de dados

Foram encontradas 3.122 questões

Q2291163 Algoritmos e Estrutura de Dados

O que faz o código a seguir?



Imagem associada para resolução da questão

Alternativas
Q2290464 Algoritmos e Estrutura de Dados

Considere uma árvore como ilustrada na figura a seguir.




Imagem associada para resolução da questão




Considerando que os nós mais à esquerda têm precedência sobre os nós mais à direita, e que só se imprime o elemento do nó na sua primeira visita, podemos dizer que as ordens de visitação aos nós, obtidas, primeiro, com uma busca em profundidade (DFS) e, depois, com uma busca em largura (BFS), nesta árvore, são, respectivamente: 

Alternativas
Q2290463 Algoritmos e Estrutura de Dados
Considere a implementação de uma fila (FIFO) de forma estática (array) com indexação entre 1 e 10, utilizando encadeamento simples nos campos do array, desobrigando, assim, que os elementos da fila estejam numa sequência de posições adjacentes do array. As posições livres são guardadas na forma de uma pilha (FILO), para facilitar a implementação. Neste exemplo em particular, cada elemento do array possui dois campos: o campo de dados (DADOS) e o índice do próximo elemento da estrutura (PROX), ou seja, o índice do elemento cuja inserção ocorreu imediatamente antes do referido elemento, para ambas: a fila e a pilha de elementos livres. O índice do último elemento inserido na fila de dados está na variável ULTIMO, e o índice do topo da pilha de elementos livres está na variável TOPO. O elemento mais antigo na fila de dados ou na pilha de posições livres é indicado por PROX= −1. Suponha que, após múltiplas inserções e deleções, ficamos com a configuração ilustrada na figura a seguir.




Muitas vezes o uso de encadeamento simples acarreta a necessidade de incluir um comando de repetição (laço) para fazer um ponteiro (ou indexador) percorrer a estrutura a partir do início até ele se posicionar no penúltimo elemento da estrutura, demandado possivelmente por uma inserção e/ou uma deleção. No exemplo em questão, pela forma de implementação escolhida, podemos afirmar que isso ocorre sempre que se fizer uma operação de
Alternativas
Q2290462 Algoritmos e Estrutura de Dados
Considere a implementação de uma fila (FIFO) de forma estática (array) com indexação entre 1 e 10, utilizando encadeamento simples nos campos do array, desobrigando, assim, que os elementos da fila estejam numa sequência de posições adjacentes do array. As posições livres são guardadas na forma de uma pilha (FILO), para facilitar a implementação. Neste exemplo em particular, cada elemento do array possui dois campos: o campo de dados (DADOS) e o índice do próximo elemento da estrutura (PROX), ou seja, o índice do elemento cuja inserção ocorreu imediatamente antes do referido elemento, para ambas: a fila e a pilha de elementos livres. O índice do último elemento inserido na fila de dados está na variável ULTIMO, e o índice do topo da pilha de elementos livres está na variável TOPO. O elemento mais antigo na fila de dados ou na pilha de posições livres é indicado por PROX= −1. Suponha que, após múltiplas inserções e deleções, ficamos com a configuração ilustrada na figura a seguir.




Suponha que queiramos inserir o dado de valor ‘13’ na fila. Considerando ULTIMO=4 e TOPO=8, após a inserção, teremos, com os dados listados na ordem padrão da fila (do mais antigo para o mais recente), a seguinte configuração: 
Alternativas
Q2287875 Algoritmos e Estrutura de Dados

Observe a árvore binária de busca balanceada AVL a seguir: 



Imagem associada para resolução da questão




Considerando a inserção dos seguintes elementos (na ordem): 129, 134 e 136, analise as afirmativas a seguir.

I. Provoca uma rotação dupla na árvore, direita/esquerda, o que adiciona um novo nó ao segundo nível da árvore.

II. Resulta em uma rotação simples e aumenta a altura da árvore.

III. Após a inserção, a complexidade computacional das operações se mantém em O(log n), no pior caso, onde n é o número de nós da árvore.


Está correto o que se afirma apenas em 

Alternativas
Q2287747 Algoritmos e Estrutura de Dados
Assinale a alternativa que apresenta uma forma correta de declaração de uma variável do tipo matriz no software VisuAlg 3.0.
Alternativas
Q2287746 Algoritmos e Estrutura de Dados
Na lógica de programação, um tipo de dado __________ é caracterizado como um número que possui parte decimal, podendo ser positivo, negativo ou zero.

Assinale a alternativa que preenche corretamente a lacuna do trecho acima.
Alternativas
Q2287690 Algoritmos e Estrutura de Dados
O algoritmo conhecido como insertion (inserção) é um dos mais conhecidos algoritmos de sort. Para um conjunto de chaves num array, o primeiro elemento é uma espécie de sentinela, e recebe um valor menor do que o menor elemento do array a ser ordenado. A lista de entrada [-1,2,4,10,5,3,11], por exemplo, seria rearranjada para [-1, 2, 3, 4, 5, 10, 11].

Assinale o código Python que executa corretamente esse algoritmo.
Alternativas
Q2286665 Algoritmos e Estrutura de Dados
A CPU de um computador multiprogramado sempre será submetida a competição e escolha para qual processo executar por vez. Para esse processo de escolha, usam-se os algoritmos de escalonamento. Esses algoritmos são quantificados através da razão entre seus Turn-around Time (TT) e tamanho em milissegundos. Considere os algoritmos de escalonamento, os conceitos abaixo e os respectivos processos.  

Processo Pronto (ou tempo de chegada): momento em que o processo está disponível para execução
Tamanho (TAM): tempo total de processamento necessário para findar a execução do processo
Turn-around Time (TT): intervalo de tempo entre a entrada do processo e sua finalização (inclusive as esperas)
Desempenho de cada Processo: tempo de desempenho do processo considerando a razão do TT pelo Tamanho
Desempenho Médio: média do desempenho de todos processos


Imagem associada para resolução da questão


Qual das alternativas apresenta o algoritmo com melhor desempenho médio total?


Alternativas
Q2286042 Algoritmos e Estrutura de Dados
Uma estrutura de dados é uma maneira organizada de armazenar e gerenciar dados em um programa ou sistema de computador. Filas e pilhas são estruturas de dados que têm diferentes princípios de operação e são úteis em contextos diferentes. Como é possível implementar uma pilha usando duas filas?
Alternativas
Q2286023 Algoritmos e Estrutura de Dados
Analise as afirmativas:

I. Java possui classes nativas para implementação de matrizes, listas, pilhas e filas. Isso aumenta a produtividade e reduz a dependência de pacotes de terceiros.
II. Listas e filas são estruturas de dados similares. O que as diferencia é o protocolo de adição e remoção de elementos. Listas podem ter elementos inseridos ou removidos de qualquer posição, enquanto, nas filas, os elementos são inseridos no final e removidos do início.
III. Além das listas, Java disponibiliza uma estrutura chamada “array”. Essa estrutura armazena dados de um mesmo tipo. Diferente de uma lista, que pode ter seu tamanho alterado, um array tem seu tamanho definido na sua criação. Um array que possui outros arrays em suas posições é chamado de array multidimensional.
IV. Filas são implementadas utilizando-se o protocolo FIFO (first-in-first-out), ou seja, o primeiro a entrar é o primeiro a sair. Esse protocolo é mantido mesmo que a fila implementada tenha prioridades diferentes para os elementos.

É correto o que se afirma em: 
Alternativas
Q2284792 Algoritmos e Estrutura de Dados
O técnico José implementou uma estrutura de dados linear na qual os elementos são organizados de modo a constituir uma sequência lógica. Na estrutura implementada por José, os elementos não são, necessariamente, armazenados de forma contígua na memória do computador, e o primeiro elemento a entrar é o último a sair.
A estrutura de dados implementada por José é caracterizada especificamente como:
Alternativas
Q2283772 Algoritmos e Estrutura de Dados

Considere o algoritmo a seguir, escrito em uma variação simplificada de PORTUGOL:


algoritmo Valores

var inteiros A,B,C

leia(A)

leia(B)

C = A

A = B

B = C


imprima(A)

imprima(B)

fim_algoritmo


Testando para os valores de entrada 4, para a variável A, e 8 para a variável B, os valores de saída são:

Alternativas
Q2283770 Algoritmos e Estrutura de Dados
Sobre o algoritmo de ordenação Merge Sort, ou Ordenação por Mistura, é CORRETO afirmar que:
Alternativas
Q2283764 Algoritmos e Estrutura de Dados
A estrutura de dados Pilha é baseada no princípio do(a):
Alternativas
Q2283752 Algoritmos e Estrutura de Dados
A expressão regular a|b* representa o conjunto:
Alternativas
Q2281847 Algoritmos e Estrutura de Dados

Considere o código JavaScript na questão a seguir.




O parâmetro L deve ter como valor um array com números inteiros, maiores que zero, dispostos em ordem crescente.

Quanto à função numeros, apresentada anteriormente, é correto afirmar que o principal propósito do algoritmo é localizar um par de números em L: 
Alternativas
Q2281784 Algoritmos e Estrutura de Dados
Imagem associada para resolução da questão

Com base no algoritmo precedente, julgue o item a seguir.
O algoritmo testa se um número é primo (ou seja, que só possa ser dividido por 1 e por ele mesmo), de modo que, se o usuário entrar com o número 7, por exemplo, o resultado será o mostrado a seguir.
Informe um número inteiro acima de 3: 7 O número 7 é primo 
Alternativas
Q2281783 Algoritmos e Estrutura de Dados
Imagem associada para resolução da questão

Considerando o algoritmo precedente, julgue o item subsecutivo.
A seguir, é corretamente mostrado o resultado da execução do algoritmo caso o usuário entre com os números 9 e 5.
Digite o número : 9 Digite o número : 5 Resultado: 7.0
Alternativas
Q2278513 Algoritmos e Estrutura de Dados

A Figura 1 abaixo apresenta qual forma de representação de um algoritmo?



Imagem associada para resolução da questão

Alternativas
Respostas
401: C
402: D
403: B
404: E
405: D
406: B
407: A
408: B
409: C
410: B
411: E
412: D
413: D
414: E
415: A
416: C
417: B
418: C
419: E
420: B