Questões de Concurso sobre Algoritmos e estrutura de dados

 
 
Disciplina 1
Assunto 10
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
2.151 questões encontradas
Questões por página
20
Mais recentes
 

Assinale a alternativa INCORRETA, com relação aos algoritmos de encriptação do tipo RSA e DES.


A

Os algoritmos DES são simétricos, onde uma chave K criptografa um texto legível X, obtendo-se outro texto ilegível, produzido pela função Fk(x) = y (leia-se uma função k de x que é igual a y).


B

O texto ilegível Y de uma chave K do algoritmo tipo DES somente pode ser desencriptografada pelo seu algoritmo inverso, do tipo Fk-1 (y) (leia-se inverso da função k de y).


C

O cálculo do par de chaves públicas assimétricas, algoritmo RSA do tipo (S, P), é computacionalmente fácil.


D

É computacionalmente difícil calcular o valor da função S( ) (leia-se função s), sem conhecer a chave S.


E

É computacionalmente fácil calcular S, a partir do conhecimento de P, nos algoritmos do tipo RSA (assimétricos).

A seqüência de comandos abaixo executa uma determinada função. Qual?

on(release){

fscommand("exec","aplicativo.exe");


A

Executar um programa *.exe a partir do Linux.


B

Executar um programa *.exe a partir de um projetor FlashMX


C
Executar um programa *.exe a partir do Windows Média Player

D

Executar um programa *.exe a partir do Windows Média Player


E

Todas as vezes que o sistema operacional encontrar um programa *.exe ele o executará automaticamente

Observe o seguinte algoritmo para calcular o produto de dois números inteiros pelo método das somas sucessivas:

Imagem associada para resolução da questão

Com relação a esta rotina podemos afirmar que:

I - sua complexidade ciclomática é igual a 2;

II - o limite superior do número de casos de testes requeridos para satisfazer o critério de cobertura de todo comando é igual a 3;

III - o limite superior do número de casos de testes requeridos para satisfazer o critério de cobertura de todos os elos é igual a 1.

As assertivas corretas são:


A

somente I;


B

somente II;


C

somente III;


D

somente I e II;


E

I, II e III.

Observe a especificação de uma entrada em um dicionário de dados para um pedido de compra. Um pedido contém obrigatoriamente o nome do cliente e do endereço para entrega, seguido opcionalmente pelo endereço de cobrança terminado por uma lista contendo pelo menos um item. Definindo:

Pedido: *pedido feito por um cliente

Endereço_Entrega: *endereço para entrega

 Endereço_Cobrança: *endereço para faturamento

Item: *código do item

o item que mostra a entrada no DD para o elemento Pedido é:


A

Pedido= Endereço_Entrega+ (Endereço_Cobrança) + 1{ Item}


B

Pedido= [Endereço_Entrega |Endereço_Cobrança] + 1{ Item}


C

Pedido= Endereço_Entrega+ Endereço_Cobrança + { Item}


D

Pedido= (Endereço_Entrega)+ Endereço_Cobrança + { Item}


E

Pedido= (Endereço_Entrega+ Endereço_Cobrança) + 1{ Item}

Considerando que o símbolo p representa os campos e s as tuplas, a expressão da álgebra relacional que seleciona o Medicamento e a Apresentação de todos os itens do Estoque com Preço até 1,00 é:


A

p medicamento, apresentação (s preço<=1,00 (estoque))


B

s medicamento, apresentação (p preço<=1,00 (estoque))


C

p preço<=1,00 (s medicamento, apresentação (estoque))


D

s preço<=1,00 (s medicamento, apresentação (estoque))


E

p medicamento, apresentação (p preço<=1,00 (estoque))

A integridade de um sistema contra ataques externos pode ser definida como o complemento de sua fragilidade. A fragilidade, por sua vez, é diretamente proporcional ao produto da probabilidade de transação conter um ataque (Pa) pela probabilidade do ataque ser repelido (Pr).

Sabendo que Pa=0,99 , Pr=0,99 , e que um sitio recebe 100.000 transações por dia, o item que contém o número mais próximo ao valor esperado do número de ataques que causarão algum dano é:


A

2.000;


B

10.000;


C

50.000;


D

98.000;


E

99.000.

Um algoritmo é uma descrição das etapas de resolução de um problema ou a indicação ordenada de uma seqüência de ações bem definidas. O algoritmo é a maneira mais elementar de se descrever uma lógica. A esse respeito é correto afirmar:


A

a lógica estruturada caracteriza-se por resoluções em laços, de dentro para fora, após ter subdividido o problema em vários fragmentos.


B

a lógica linear, modular, estruturada e relacional constituem os tipos de lógicas existentes.


C

a diferença entre a lógica linear e a modular é que a primeira visa a solução dos problemas como foram propostos, sem segmentá-los.


D

a lógica relacional caracteriza-se por resoluções em laços, de dentro para fora, após ter subdividido o problema em vários fragmentos.


E

existem diversos instrumentos para descrever a lógica de programação, como: os pictóricos, os narrativos e os de detalhe, que são os fluxogramas.

Algoritmos baseados em bloqueios e time stamps são usualmente empregados em sistemas gerenciadores de bancos de dados para a implementação de:


A

chaves estrangeiras e chaves primárias;


B

controle de concorrência;


C

índices do tipo bit map;


D

otimização de consultas;


E

recuperação de dados após falhas.

Na álgebra relacional, são ditas primitivas as operações de seleção, projeção, produto, união e diferença, porque nenhuma delas pode ser expressa em função das demais. A operação primitiva que é imprescindível para a expressão da operação de interseção é:


A

seleção;


B

projeção;


C

produto;


D

união;


E

diferença.

Dadas as duas figuras abaixo:

Imagem associada para resolução da questão

e, considerando o conceito de árvore binária, pode-se afirmar que

A

são duas árvores diferentes.


B

são duas árvores iguais.


C

são uma única árvore.


D

não possuem sub-árvores.


E

não representam árvores.

A propriedade de durabilidade para transações distribuídas é, em geral, garantida pela implementação do algoritmo conhecido como:


A

two phase commitment;


B

data independence;


C

two phase lock;


D

balanced tree;


E

checkpoint.

Sejam A, B e C variáveis numéricas contendo os valores 2, 4 e 5, respectivamente, S uma variável contendo o literal "POSITIVO" e T uma variável lógica contendo o valor falso. Assinale a expressão lógica cujo resultado possui valor lógico verdadeiro.


A

A + B < C ou S = "FALSO"


B

A × B > C e S = "VERDADEIRO"


C

RESTO (B, A) > C e não T


D

A > B e não T ou S = "POSITIVO"


E

(A2 > B ou T) e S = "POSITIVO"

Dadas as variáveis numéricas A e B, contendo os valores 2 e 6, respectivamente; a variável L, contendo o literal FALSO; e a variável lógica V, contendo o valor lógico verdadeiro, assinale a expressão lógica cujo resultado possui valor lógico falso


A

A2 > B ou V


B

A > B ou L = “FALSO”


C

A < B e L = “LITERAL”


D

A > B e V ou L = “FALSO”


E

A – B < 2 e L ≠ “VERDADEIRO” e V

Considere a seguinte especificação para um processo que recebe como entrada um vetor V com n+1 posições e produz uma saída O que é verdadeira se e somente se o valor da primeira posição aparece em uma das n posições seguintes.

Pré: {n>1 }

A pós-condição que completa esta especificação é:


A
Imagem associada para resolução da questão

B
Imagem associada para resolução da questão

C
Imagem associada para resolução da questão

D
Imagem associada para resolução da questão

E
Imagem associada para resolução da questão

Seja uma matriz Nx12 onde cada elemento da matriz é um número real e representa um índice mensal de inflação de um determinado país. Cada uma das N linhas da matriz representa um país e as 12 colunas representam os meses do ano. Deseja-se criar o método Java "public float[ ] calculeMaiorInflação(float[ ][ ] m)" que retorna o mês de maior inflação de cada um dos N países. O parâmetro do método "calculeMaiorInflação" é a matriz de inflações citada. Para a implementação desse método "calculeMaiorInflação", qual fragmento de código Java é o correto, no que se refere a sua lógica algorítmica?


A

for (int i = 0; i < m.length; i+ ) {

/* instruções que não envolvem

comandos de repetição */ }


B

for (int i = 0; i < 12; i++) for (int j = 0; j < 12; j++) { /* instruções que não envolvem comandos de repetição */ }


C

for (int i = 0; i < m.length; i++) for (int j = 0; j < m[i].length; j++) { /* instruções que não envolvem comandos de repetição */ }


D

for (int i = 0; i < m[i].length; i++) for (int j = 0; j < m[i].length; j++) { /* instruções que não envolvem comandos de repetição */ }

Qual das seguintes afi rmações a respeito do método Quick Sort de ordenação é correta?


A

Em um array com quantidade ímpar de dados, as partições geradas nunca terão o mesmo tamanho (quantidade de dados).


B

Após a geração das duas partições do array a ordenar, sabe-se com certeza a posição defi nitiva no array do dado usado como pivô.


C

Em um array com quantidade ímpar de dados, as partições geradas sempre terão o mesmo tamanho (quantidade de dados).


D

O método Quick Sort só funciona corretamente quando a quantidade de dados a ordenar for maior que três.

 
Ir para a página:
OK
 
Gerar simulado