Questões de Concurso sobre Selection sort (selecione)

 
 
Disciplina
Assunto 1
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
 
28 questões encontradas
Questões por página
20
Mais recentes
 

Um algoritmo de busca sequencial em um vetor de n elementos possui uma complexidade de tempo, no pior caso, de O(n). Se um algoritmo de ordenação por seleção (Selection Sort) for aplicado a esse mesmo vetor, qual será a sua complexidade de tempo no pior caso?


A

O(log n)


B

O(n)


C

O(n log n)


D

O(n2)


E

O(2n)

Sobre algoritmos de ordenação, assinale a alternativa que apresenta, respectivamente, a definição do conceito de “estabilidade” e o algoritmo que NÃO é estável em sua implementação padrão.


A

Estabilidade significa que o algoritmo mantém a ordem relativa de elementos com chaves iguais. A ordenação por seleção não é estável.


B

Estabilidade refere-se à capacidade de ordenar strings e números simultaneamente. A ordenação por bolha não é estável.


C

Estabilidade garante que o algoritmo termine em tempo linear. A ordenação por inserção não é estável.


D

Estabilidade significa que o algoritmo não utiliza memória extra. A ordenação por seleção não é estável.


E

Estabilidade é a propriedade de ordenar elementos em ordem decrescente. A ordenação por inserção não é estável.

Assinale a afirmação verdadeira a respeito do comando “SELECT P.* FROM Professor as P ORDER BY nome, sobrenome DESC”.


A

O resultado retorna apenas nomes e sobrenomes da tabela sem ordenação.


B

O resultado dá erro, pois o correto seria usar somente “*” no lugar de “P.*”.


C

O resultado apresenta todos os atributos de professores exibindo nomes em ordem crescente com sobrenomes em ordem decrescente.


D

O resultado apresenta todos os atributos de professores exibindo nomes e sobrenomes em ordem decrescente.


E

O resultado lista apenas nomes e sobrenomes dos professores, ambos em ordem decrescente.

Em um concurso público, a nota de corte para um determinado cargo é definida como a menor nota entre os candidatos aprovados para esse cargo. Portanto, a nota de corte corresponde à menor nota entre os candidatos que ocuparam o número de vagas oferecido para determinado cargo. Para calcular a nota de corte para cada cargo, a seguinte sequência pode ser utilizada:


1. Ordenar, de forma decrescente, as notas de todos os candidatos que concorrem ao cargo;

2. Selecionar as notas dos candidatos até o número de vagas disponíveis;

3. A nota de corte será a última nota entre os candidatos aprovados. Com base nesse contexto, considere que um sistema para calcular a nota de corte será implementado com as seguintes tecnologias: Python, JavaScript e HTML.


  1. Python: O código Python deve receber como entradas as variáveis notas_candidatos (contendo as notas não ordenadas dos candidatos para um determinado cargo) e num_vagas (o número de vagas disponíveis para o cargo). A partir dessas entradas, o código Python será responsável por calcular a nota de corte para determinado cargo.
  2. HTML: O HTML será responsável por exibir a interface, onde o usuário deverá inserir: as notas dos candidatos para um determinado cargo, separadas por vírgula, em um único campo de texto; e, em outro campo, o número de vagas disponíveis para o cargo.
  3. JavaScript: O JavaScript será responsável por manipular a interação do usuário, acessando o conteúdo dos campos do formulário HTML e enviando os dados ao Python para que o cálculo da nota de corte para determinado cargo seja realizado.


Com base nesse cenário, assinale as seguintes afirmações com V (Verdadeiro) ou com F (Falso).


( ) Em Python, o código notas_candidatos_ordenadas = sorted(notas_candidatos, reverse=True) ordena a lista notas_candidatos em ordem decrescente e retorna uma nova lista, que é armazenada na variável notas_candidatos_ordenadas; e o código notas_candidatos_ordenadas[num_vagas - 1] acessa a nota do candidato que ocupa a última vaga disponível, sendo esse o valor da nota de corte.

( ) Em HTML, a tag <input> pode ser utilizada para criar cada um dos campos de entrada: um campo texto, com as notas dos candidatos para um determinado cargo, separadas por vírgula; e, outro campo, com o número de vagas disponíveis para o cargo.

( ) Em JavaScript, o método document.getElementById () pode ser utilizado para acessar o conteúdo do formulário HTML, como as notas dos candidatos e o número de vagas informados pelo usuário.

( ) A utilização de um framework de front-end como React ou Vue.js poderia ser utilizado na implementação, substituindo as atribuições do Python.


Assinale a alternativa que apresenta a sequência correta.


A

V, V, V, F


B

V, F, F, V


C

F, V, V, F


D

F, F, F, V

Um desenvolvedor precisa otimizar um sistema legado que ordena listas de notas dos alunos. Atualmente, o sistema usa o Selection Sort. O analista está considerando substituí-lo pelo Quick Sort para melhorar a performance média. Para justificar a mudança, ele precisa responder às seguintes perguntas fundamentais sobre os dois algoritmos:


  1. Qual é a complexidade de tempo do Selection Sort no pior caso?
  2. Qual estratégia algorítmica o Quick Sort utiliza?
  3. Em qual cenário a performance do Quick Sort (usando o último elemento como pivô) se assemelha à do Selection Sort?


Assinale a alternativa que indica, correta e respectivamente, as respostas para as perguntas acima.


A

O(n*lgn) – Gulosa – Quando o vetor de entrada está em ordem aleatória.


B

O(n²) – Programação dinâmica – Quando o vetor de entrada contém elementos duplicados.


C

O(n) – Divisão e conquista – Quando o vetor de entrada tem um tamanho pequeno.


D

O(n*lgn) – Backtracking – Quando o vetor de entrada já está ordenado.


E

O(n²) – Divisão e conquista – Quando o vetor de entrada já está ordenado.

Considerando ainda a situação hipotética apresentada, e que essa universidade queira selecionar todos os estudantes do curso de marketing e administração que completam 20 anos em 2026 para participarem de um projeto de inserção no mercado de trabalho, assinale a opção que corresponde à consulta SQL que retornará essa lista de estudantes ordenada em ordem alfabética.


A

SELECT nome_aluno

FROM Aluno

WHERE nome_aluno IN (‘Marketing’, ‘Administração’)

AND EXTRACT(YEAR FROM data_nascimento) = 2006

ORDER BY nome_aluno;


B

SELECT a.nome_aluno

FROM Aluno a

JOIN Curso c ON a.curso_id = c.curso_id

WHERE c.nome_curso IN (‘Marketing’, ‘Administração’)

AND EXTRACT(YEAR FROM a.data_nascimento) = 2026

ORDER BY a.nome_aluno;


C

SELECT a.nome_aluno

FROM Aluno a

JOIN Curso c ON a.curso_id = c.curso_id

WHERE c.nome_curso IN (‘Marketing’, ‘Administração’)

AND EXTRACT(YEAR FROM a.data_nascimento) = 2006

ORDER BY a.nome_aluno ASC;


D

SELECT nome_aluno

FROM Aluno

WHERE curso_id IN (‘Marketing’, ‘Administração’)

AND YEAR(data_nascimento) = 2006

ORDER BY nome_aluno;


E

SELECT a.nome_aluno, c.nome_curso

FROM Aluno a

JOIN Curso c ON a.curso_id = c.curso_id

WHERE EXTRACT(YEAR FROM a.data_nascimento) = 2006

ORDER BY c.nome_curso DESC;

Analise o algoritmo da figura abaixo.


Imagem associada para resolução da questão


Após a execução, será gerada, como resultado, a seguinte sequência de números:


A

1 0 -1 -1 0 1


B

-1 1 0 0 1 -1


C

1 -1 0 0 -1 1


D

-1 0 1 1 0 -1

Considere o algoritmo de ordenação para um vetor de inteiros em linguagem Javascript descrito a seguir:


Imagem associada para resolução da questão


Considerando n como o tamanho do vetor, assinale a alternativa CORRETA que corresponde à complexidade média de tempo do algoritmo na notação Big-O:


A

O(n).


B

O(nlogn).


C

O(logn).


D

O(n²).


E

O(2n).

Pedro adotou o algoritmo apresentado a seguir para ordenar um vetor de inteiros V, com índices variando de 1 até n.


Imagem associada para resolução da questão


O algoritmo utilizado por Pedro foi o:


A

Selection Sort;


B

Insertion Sort;


C

Bubble Sort;


D

Merge Sort;


E

Quick Sort;

Alexandre recebe a tarefa de treinar um sistema de detecção de fraudes no banco em que trabalha. Para isso, ele testa cinco modelos, M1, M2, M3, M4 e M5, que possuem, respectivamente, 2, 2, 2, 3 e 3 parâmetros. Alexandre realiza uma seleção bayesiana dos modelos, usando o critério de informação bayesiano.


Sabendo que o tamanho da amostra é 200 e que os valores maximizados das funções de verossimilhança dos modelos são 0,3; 0,4; 0,5; 0,3 e 0,5, respectivamente, Alexandre seleciona o modelo:


(se necessário, use ln(2) = 0,7; ln(3) = 1,1 e ln(5) = 1,6)


A

M1;


B

M2;


C

M3;


D

M4;


E

M5.

Assinale a opção em que é corretamente apresentado o método de aprendizagem de máquina em que o algoritmo tem a capacidade de selecionar quais dados serão utilizados para o treinamento.


A

aprendizado por transferência


B

aprendizado multitarefa


C

aprendizado ativo


D

aprendizado online


E

aprendizado em conjunto

João foi direcionado, pela consultoria na qual trabalha, para um novo cliente, a fim de iniciar a elicitação de requisitos. Após analisar alguns documentos e entrevistar alguns gestores, ele resolveu utilizar a técnica de card sorting, na qual contará com a participação de um grupo de 15 usuários. Após a utilização da técnica, João observou que o card sorting:


A

envolve muitos custos e não oferece respostas adequadas em tempo viável;


B

é voltado exclusivamente para dados quantitativos;


C

facilita a definição de arquiteturas complexas e de meios de interoperabilidade necessários;


D

ajuda a fornecer informações bem estruturadas;


E

permite apenas a execução de forma presencial.

Analise o diagrama de blocos abaixo e assinale a alternativa que apresenta qual será a sequência exibida no display do usuário ao fim do programa quando os valores de entrada de A e B são 9 e 3 respectivamente.


Imagem associada para resolução da questão


A

9 6 9


B

9 6 6


C

6 3 6


D

3 3 6

Em um dispositivo IoT (Internet das Coisas) que processa pequenas quantidades de dados sensores, o algoritmo de ordenação por seleção clássico pode ser usado para ordenar leituras de sensores. Você foi requisitado para desenvolver um algoritmo de ordenação por seleção. Aponte, entre as alternativas abaixo, qual é o principal procedimento que você irá desenvolver em cada iteração.


A

Dividir o conjunto de dados em duas partes iguais.


B

Selecionar o maior elemento e colocá-lo na última posição.


C

Selecionar o menor elemento e colocá-lo na primeira posição.


D

Trocar todos os elementos de posição com seus vizinhos.

Analise o algoritmo a seguir.


• Passo 1. Encontre o menor item do vetor.

• Passo 2. Troque-o de lugar com o item da primeira posição do vetor.

• Passo 3. Repita essas duas operações com os n − 1 itens restantes, depois com os n − 2 itens, até que reste apenas um elemento.


Qual é o método de ordenação descrito pelo algoritmo?


A

Inserção.


B

Sheelsort.


C

Seleção.


D

Quiksort.

 
 
Gerar simulado