Questões de Concurso
Sobre algoritmos em algoritmos e estrutura de dados
Foram encontradas 2.344 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.
Sabendo-se que a função retorna o número de elementos de um array e que L assume o tipo de um array de inteiros, indexados a partir de zero, analise o pseudocódigo a seguir.

Esse algoritmo deveria ordenar os elementos do array em ordem crescente, mas há problemas no código que produzem resultados errôneos.
Assinale a opção que indica o que é de fato printado ao final da execução do código mostrado.
Considere o seguinte histórico de dez compras em uma loja de conveniência onde, para cada compra, aparecem assinalados os produtos adquiridos.

Na aplicação do algoritmo Apriori para essa amostra, a medida de confiança (confidence) para a associação
{cerveja → gelo}
é
Observe a declaração de função exibida a seguir.

Assinale a opção que apresenta a forma correta para retornar
dados nesse tipo de funçã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 respeito de análise e desenvolvimento de sistemas, julgue o item subsequente.
Em um fluxograma, as caixas de decisão são como
“caixas pretas”, uma vez que não se tem clareza da ação
que será executada.
A respeito de análise e desenvolvimento de sistemas, julgue o item subsequente.
Os algoritmos são sequências finitas de instruções que, quando corretamente executadas, levam à solução de um problema.
Avalie as afirmações abaixo:
I. A classe P e a classe NP são disjuntas.
II. A classe P é um subconjunto da classe co-NP.
III. Problemas coNP-completos admitem um certificado tal que uma resposta negativa pode ser verificada em tempo polinomial.
IV. A interseção das classes NP e co-NP é vazia.
Está correto apenas o que se afirma em
A teoria de algoritmos de aproximação, às vezes chamados de algoritmos aproximativos, é extremamente útil para tratar problemas NP-difíceis.
Sobre algoritmos de aproximação, é correto afirmar que
Uma transformação polinomial é uma ferramenta fundamental na demonstração de que determinado problema é NP-difícil.
Avalie as afirmações sobre propriedades que transformações polinomiais devem satisfazer.
I. Para toda transformação polinomial, deve existir uma Máquina de Turing determinística que a computa em tempo polinomial.
II. Se uma transformação polinomial transforma um elemento de linguagem A em um elemento de linguagem B, então A é um subconjunto não necessariamente próprio de B.
III. Se uma transformação polinomial transforma um elemento de uma linguagem A em um elemento de linguagem B, e A pertence a NP, então B pertence a NP.
IV. A quantidade de espaço utilizada pela transformação pode ser limitada por uma constante.
Está correto apenas o que se afirma em