Questões de Concurso Sobre algoritmos em algoritmos e estrutura de dados

Foram encontradas 2.344 questões

Q4184714 Algoritmos e Estrutura de Dados
Em uma análise de desempenho de um sistema de gerenciamento de dados, um Técnico de Informática avaliou a eficiência de diferentes estruturas de dados utilizadas para armazenar registros em memória. O sistema utiliza uma lista estática (array) para armazenar os elementos de forma sequencial. Durante os testes, foi necessário realizar uma consulta para localizar um elemento específico na lista. Considerando o pior caso, em que o elemento procurado está na última posição ou não está presente na estrutura, foi analisada a complexidade dessa operação. Com base nesse contexto, assinale a alternativa que apresenta CORRETAMENTE a complexidade da operação de busca em uma lista estática no pior caso. 
Alternativas
Q4183442 Algoritmos e Estrutura de Dados
O ensino da informática na Educação Básica evoluiu da simples "alfabetização digital" (uso instrumental de editores de texto e navegação web) para o desenvolvimento do chamado Pensamento Computacional. Segundo as diretrizes educacionais contemporâneas (como a BNCC), o Pensamento Computacional envolve fundamentalmente: 
Alternativas
Q4183439 Algoritmos e Estrutura de Dados
Ao introduzir as noções de lógica de programação para alunos da Educação Básica, o primeiro passo do professor geralmente é explicar o conceito de "algoritmo", fazendo analogias com receitas de bolo ou manuais de instrução. No contexto da Ciência da Computação, um algoritmo é definido corretamente como:
Alternativas
Q4181836 Algoritmos e Estrutura de Dados
Estruturas de dados são fundamentais para a eficiência de algoritmos, influenciando diretamente o desempenho de operações como busca, inserção e remoção. Entre essas estruturas, a tabela hash uliliza uma função hash para mapear chaves a posições em uma estrutura de armazenamento, proporcionando alto desempenho quando bem distribuída.
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.
Alternativas
Q4181831 Algoritmos e Estrutura de Dados
A logica de programação envolve a construção de algoritmos que utilizam estruturas de controle, como decisões e repetições, além da manipulação de diferentes tipos de dados. Diante disso, analise as assertivas a seguir:
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:
Alternativas
Q4181262 Algoritmos e Estrutura de Dados

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:


Imagem associada para resolução da questão


Ao final da execução do algoritmo acima, o valor exibido pela instrução "escreva" será:

Alternativas
Q4176937 Algoritmos e Estrutura de Dados
Sobre algoritmos e programação, assinalar a alternativa que preenche a lacuna abaixo CORRETAMENTE.
Um algoritmo consiste em uma sequência _______________ de instruções destinadas à resolução de um problema ou à execução de uma tarefa. 
Alternativas
Q4172583 Algoritmos e Estrutura de Dados

Considere o código a seguir.



Imagem associada para resolução da questão



A saída correta no console que é exibida executando esse código Java é

Alternativas
Q4172580 Algoritmos e Estrutura de Dados

Considere o programa a seguir escrito em linguagem C.


#include <stdio.h>

int TAM(int n) {

 int x;

 if (n == 1) {

 return(1 + n);

 }

 x = TAM(n/2) + TAM(n/2);

 return(x);

}

int main() {

 int n = 16;

 printf("%d ", TAM(n));

}


Após a execução do programa, o resultado é

Alternativas
Q4172579 Algoritmos e Estrutura de Dados
Considere as funções busca1 e busca2 descritas a seguir, que apresentam a busca de um nó na lista linear L com n elementos, conhecendo-se a sua chave. A variável x corresponde à chave do nó procurado. As funções informam, ao final, o índice do nó que se deseja buscar. Se este não for encontrado, o índice é nulo.

função busca1(x) 1. i := 1 2. busca1 := 0 3. enquanto i ≤ n faça 4. se L[i].chave = x então 5. busca1 := i 6. i := n + 1 7. senão i := i + 1
função busca2(x) 1. i := 1 2. L[n + 1].chave := x 3. enquanto L[i].chave ≠ x faça 4. i := i + 1 5. se i ≠ n + 1 então busca2 := i 6. senão busca2 := 0

Com base nas informações dadas, é correto afirmar:
Alternativas
Q4172576 Algoritmos e Estrutura de Dados
Analise as seguintes afirmativas sobre os conceitos relacionados às tabelas de dispersão.

I. Esse método aproveita a possibilidade de acesso randômico à memória para alcançar uma complexidade temporal média por operação de O(1), sendo o pior caso, entretanto, O(log n), em que n é a quantidade de chaves a serem armazenadas na tabela.
II. Uma das estratégias conhecidas para tratar colisões consiste em armazenar as chaves com o mesmo endereço-base em listas encadeadas. As listas podem se encontrar no exterior da tabela ou compartilhar o mesmo espaço dela.
III. A ideia básica do método de endereçamento aberto para tratamento de colisões é, caso ainda haja espaço, armazenar as chaves com o mesmo endereço-base na própria tabela, mas sem a necessidade da criação de listas encadeadas.

Com relação a essas afirmativas, pode-se afirmar que
Alternativas
Q4172574 Algoritmos e Estrutura de Dados
Seja V um vetor de n números inteiros distintos. Sobre a complexidade temporal de algoritmos para ordenar V em ordem crescente, é correto afirmar que
Alternativas
Q4170073 Algoritmos e Estrutura de Dados
Analise o código abaixo, escrito em português estruturado (Portugol):
Imagem associada para resolução da questão
A estrutura de repetição utilizada é:
Alternativas
Q4165106 Algoritmos e Estrutura de Dados

Considere a seguinte lista ordenada de números inteiros em Python.


Números = [1, 3, 5, 7, 9, 11, 13, 15, 17, 19]



Implementando um método de busca, qual a representação correta do código para realizar uma busca binária nessa lista?  

Alternativas
Q4161061 Algoritmos e Estrutura de Dados
Durante um treinamento sobre lógica de programação, um Técnico de TI apresentou o seguinte pseudocódigo:

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
Alternativas
Q4160922 Algoritmos e Estrutura de Dados
Considere o contexto de busca de dados em estruturas lineares e ordenadas. Diante dessa situação, um Programador analisa as características de dois algoritmos amplamente utilizados para localização de elementos em vetores: busca sequencial e busca binária. Com isso, analise as assertivas abaixo e julgue-as em Verdadeiras (V) ou Falsas (F):

() 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?
Alternativas
Q4160914 Algoritmos e Estrutura de Dados
Considere os conceitos fundamentais de lógica de programação, algoritmos e estruturas de dados, incluindo variáveis, constantes, tipos de dados, operadores, expressões, estruturas condicionais, estruturas de repetição, funções e procedimentos. Diante disso, analise as assertivas abaixo e julgue-as em Verdadeiras (V) ou Falsas (F):

() 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? 
Alternativas
Q4160910 Algoritmos e Estrutura de Dados
Considere uma associação pública vinculada a um consórcio de municípios que mantém um sistema de gestão de dados para organizar registros numéricos utilizados em relatórios administrativos. Um Programador precisa implementar um algoritmo de ordenação para um vetor de inteiros desordenado, com o objetivo de facilitar consultas futuras. O algoritmo exigido percorre repetidamente o vetor, seleciona o menor elemento da parte ainda não ordenada e o posiciona na sua posição correta, repetindo esse processo até que toda a estrutura esteja ordenada. Esse algoritmo apresenta, no pior caso, complexidade O(n2), devido ao número elevado de comparações realizadas entre os elementos durante as iterações. Nesse contexto, qual algoritmo de ordenação atende à descrição apresentada?
Alternativas
Q4159911 Algoritmos e Estrutura de Dados
Em estruturas de dados, diversos algoritmos de ordenação podem ser utilizados, cada um com características específicas quanto à eficiência e complexidade. Um desses algoritmos segue a estratégia “dividir para conquistar”, dividindo recursivamente o vetor em partes menores, ordenando essas partes e depois mesclando os resultados em uma sequência final ordenada. O enunciado refere-se ao algoritmo 
Alternativas
Q4149733 Algoritmos e Estrutura de Dados
Analise os itens e assinale a alternativa CORRETA:
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). 
Alternativas
Respostas
41: C
42: D
43: A
44: D
45: A
46: C
47: B
48: C
49: B
50: A
51: D
52: C
53: E
54: B
55: D
56: A
57: A
58: D
59: E
60: A