Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.422 questões
I. O tempo de execução no pior caso do algoritmo Merge-Sort é Θ(n log n).
PORQUE
II. O procedimento MERGE executa Θ(n) operações ao combinar as duas metades, gerando a recorrência T(n)=2T(n/2)+Θ(n), cuja solução é Θ(n log n).
Em hashing com encadeamento (separate chaining), armazenando n chaves em uma tabela de tamanho m, o fator de carga α é definido por α = _______________. Para uma função hash que aproxima hashing uniforme simples, o tempo médio esperado de uma operação de busca bem-sucedida é O(1 + ________________).
A sequência que preenche corretamente as lacunas é:
I. Um percurso em ordem (INORDER-TREE-WALK) em T imprime (ou produz) as chaves em ordem crescente (não decrescente).
PORQUE
II. O tempo de execução do procedimento INORDER-TREE-WALK é O(n2), pois sua complexidade não depende apenas do número total de nós processados.
Considerando o cenário ideal de funcionamento de uma tabela hash, em que a função hash distribui uniformemente as chaves e há baixa ocorrência de colisões, assinale a alternativa que representa CORRETAIVENTE a complexidade da operação de busca nessa estrutura.
I. Estruturas de repetição permitem que um conjunto de instruções seja executado várias vezes, de acordo com uma condição ou quantidade definida. II. Tipos de dados indicam como as informações serão armazenadas e manipuladas, podendo incluir valores inteiros, reais, textuais e logicos. III. Algoritmos representam sequências de instruções organizadas para resolver problemas, podendo ser adaptados conforme a necessidade do contexto. IV. Estruturas condicionais são utilizadas para repetir blocos de comandos em intervalos fixos, substituindo os laços de repetição.
Pode-se afirmar que:
Algoritmos podem ser descritos por meio de pseudocódigo, uma notação que representa a lógica de um programa de forma independente de qualquer linguagem de programação específica. Considerando isso, analise o pseudocódigo apresentado abaixo:

Ao final da execução do algoritmo acima, o valor exibido pela instrução "escreva" será:
Um algoritmo consiste em uma sequência _______________ de instruções destinadas à resolução de um problema ou à execução de uma tarefa.
contador <-0 PARA I DE 1 ATÉ 10 FAÇA SE habitantes[i] > 50000 ENTÃO contador <- contador + 1 FIM SE FIM PARA
Considerando que a variável "habitantes" é um vetor com pelo menos 100 valores, assinale a alternativa que identifica CORRETAMENTE o que o algoritmo apresentado faz
() Na busca sequencial, não é necessário que o vetor esteja ordenado, pois o algoritmo percorre os elementos um a um até encontrar o valor desejado ou até o final da estrutura.
() A busca sequencial possui complexidade média О (log n), sendo mais eficiente que a busca binária em grandes conjuntos de dados.
() A busca binária exige que o vetor esteja ordenado, pois realiza sucessivas divisões do espaço de busca com base na comparação do elemento central.
() A busca binária pode ser aplicada em vetores não ordenados, desde que o algoritmo ignore a etapa de comparação central e percorra todos os elementos.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
() Variáveis são espaços de memória que podem ter seus valores alterados durante a execução de um algoritmo, enquanto constantes armazenam valores fixos que não sofrem alteração durante a execução.
() Estruturas condicionais são utilizadas para repetir blocos de comandos um determinado número de vezes ou enquanto uma condição for satisfeita.
() Estruturas de repetição permitem executar um conjunto de instruções várias vezes, com base em uma condição ou contador, como nos laços while e for.
() Funções e procedimentos são blocos de código reutilizáveis, sendo que funções e procedimentos sempre retornam valores ao final da execução.
Qual alternativa preenche, CORRETAMENTE, de cima para baixo, os parênteses acima?
I- FOR - é um laço de repetição usado para executar um bloco de código repetidas vezes.
II - IF - é uma estrutura condicional que executa um bloco de código apenas uma vez, caso a condição seja verdadeira. Não é um laço de repetição.
III - BREAK - (que significa "enquanto") é um laço de repetição (loop) utilizado para executar um bloco de código repetidamente enquanto uma determinada condição for verdadeira.
IV - WHILE - É um comando de controle usado para interromper a execução de um loop (como o while) ou de uma estrutura de decisão (como o switch).
Analise as afirmativas abaixo sobre os métodos de caminhamento em árvores binárias.
Estão corretas apenas as afirmativas
Analise as afirmativas abaixo sobre as propriedades de uma Árvore Binária de Busca (BST).
Para qualquer nó x, se y é um nó na subárvore esquerda de x, então a chave de y é maior ou igual à chave de x. O percurso em ordem (in-order tree walk) de uma árvore binária de busca imprime as chaves em ordem crescente. O tempo de execução das operações básicas, como inserção e busca em uma BST, é proporcional à altura da árvore. No pior caso, a altura de uma árvore binária de busca com n nós é Θ(n).Estão corretas apenas as afirmativas
Analise os dois algoritmos abaixo, escritos em VisuAlg:
Algoritmo 1)
algoritmo "Números de 1 a 10" var j: inteiro
inicio
para j de 1 ate 10 faca
escreva (j:3) fimpara
fimalgoritmo
Algoritmo 2)
algoritmo "Numeros de 10 a 1" var j: inteiro
inicio
para j de 10 ate 1 faca
escreva (j:3) fimpara
fimalgoritmo
Assinale a alternativa que indica, correta e respectivamente, o resultado do algoritmo 1 e do algoritmo 2.