Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.316 questões
Considere os seguintes métodos de busca/indexação:
I. Busca binária
II. Tabelas hash
III. Índices B-trees
Considere ainda um universo de busca com aproximadamente um milhão de chaves, para o qual cada método tenha sido implementado adequadamente.
Num benchmark extensivo, cada método apresentou um número médio de acessos até que cada chave fosse localizada.
Esses tempos médios, em ordem crescente, correspondem aos métodos:
I O algoritmo quicksort é muito eficiente quando temos uma quantidade pequena de elementos a ordenar. II O algoritmo shell utiliza intensamente a inserção direta. III No algoritmo bubble sort o número de variáveis envolvidas é pequeno.
As afirmativas I, II e III são, respectivamente:
A respeito de um algoritmo recursivo, analise as afirmativas abaixo e assinale a alternativa correta.
I. Deve conter pelo menos uma estrutura de repetição.
II. Deve conter pelo menos uma estrutura de seleção.
III. Deve invocar a si mesmo pelo menos uma vez ao ser executado.
Considere a seguinte definição: “Uma estrutura de seleção permite a escolha de um grupo de ações e estruturas, contido na estrutura de seleção, a ser executado quando determinadas condições, representadas por expressões lógicas, são ou não satisfeitas”. Com base nessa definição, analise as afirmativas abaixo e assinale a alternativa correta.
I. Uma estrutura de seleção deve conter pelo menos outra estrutura de seleção.
II. O grupo de ações existente dentro de uma estrutura de seleção pode não ser executado.
III. Uma estrutura de seleção sempre deve conter dois grupos de ações: um que é executado caso a expressão lógica seja verdadeira e outro que é executado caso a expressão lógica seja falsa.
Para descobrir se um ano é bissexto (possui 366 dias), pode-se aplicar a seguinte regra: se o ano for divisível por 400, então o ano é bissexto. Além disso, se o ano não for divisível por 400 mas for divisível por 4 e, ao mesmo tempo, não for divisível por 100, então o ano é bissexto. Nos demais casos pode-se afirmar que o ano não é bissexto. Considerando as três definições a seguir, qual das alternativas representa uma expressão lógica que tem valor lógico verdadeiro somente quando o ano for bissexto?
Definição 1: o valor da expressão a rd b é o resto da divisão inteira de a por b.
Definição 2: o valor da expressão a eq b é verdadeiro quando o valor de a for igual ao valor de b e falso caso contrário.
Definição 3: os símbolos v, ^ e ~ representam, respectivamente, os operadores lógicos E, OU e NEGAÇÃO.
A notação O é amplamente utilizada como ferramenta de análise para calcular a complexidade computacional de um algoritmo caracterizando seu tempo de execução e limites espaciais em função de um parâmetro n.
Considere o código de um método em Java contendo o algoritmo a seguir:

Se cada um dos arranjos a e b do algoritmo tem
tamanho n, então, o pior caso para o tempo de execução desse método é:
As estruturas de repetição possibilitam a criação de laços de repetição dentro de um algoritmo, os quais ganham esse nome pela sua característica de execução finita em círculos. A tabela, a seguir, apresenta uma comparação entre as estruturas de repetição existentes:

Em que:
v é a variável de controle;
vi é o valor inicial da variável v;
vf é o valor final da variável v;
p é o valor do incremento dado à variável v.
Sabe-se que algumas características da tabela acima foram propositalmente omitidas. Desta forma, os itens (I), (II) e (III) são, respectivamente:
Considere as seguintes afirmações sobre algoritmos e estruturas de dados:
I. Filas são estruturas do tipo FIFO (First In First Out).
II. A inserção no fim de uma lista duplamente encadeada e não ordenada é realizada em O(n).
O tempo de execução do algoritmo quicksort no pior caso é O(n2 ).
Assinale a opção CORRETA:
A tabela verdade relacionada abaixo corresponde a que porta lógica:

var A: conjunto [1..12] de inteiro I, X, J: inteiro início para I de 1 até 12 passo 1 faça leia A[I] fim_para para I de 1 até 11 passo 1 faça para J de I + 1 até 12 passo 1 faça se (A[I] < A[J]) então X ← A[I] A[I] ← A[J] A[J] ← X
fim_se fim_para fim_para para I de 1 até 12 passo 1 faça escreva A[I] fim_para fim
Esse algoritmo tem a função de:
I. As variáveis declaradas dentro das sub-rotinas são chamadas de variáveis locais e aquelas declaradas fora de qualquer sub-rotina são chamadas de variáveis globais. II. Um parâmetro passado por valor para uma sub-rotina se comportará como uma variável local, isto é, qualquer modificação no valor desta variável não será visível fora da sub-rotina. III. Um parâmetro passado por referência para uma sub-rotina se comportará como uma variável global, isto é, qualquer modificação no valor desta variável será visível também fora da sub-rotina.
Estão CORRETAS as afirmativas:
I. f(n) = n² II.f(n) = nlog₂n III. f(n) = 2n IV. f(n) = 3log₂n
Ao fazer a análise dos algoritmos, a Analista conclui corretamente que
Considere o algoritmo em pseudocódigo a seguir:

A alternativa que corresponde à saída do algoritmo é:

Considere que o número de CPF carregado na tabela é 123456789.

Assinale a alternativa que apresenta o valor da soma que será usado para o 1º dígito de controle (posição 10) e o
dígito de controle calculado e armazenado em TAB(10), respectivamente.

TAB 45 3 689 27 183 12 Posição 1 2 3 4 5 6
O fluxograma a seguir faz operações sobre essa tabela; uma das operações é ler um valor do teclado.
Assinale a alternativa que descreve o que faz o fluxograma e como fica a tabela após serem executados os passos do fluxograma.