Questões de Concurso Sobre algoritmos e estrutura de dados
Foram encontradas 3.124 questões
Ao final da execução do algoritmo acima, qual será o valor da variável “x”?
– Analise o algoritmo abaixo escrito em pseudocódigo (Portugol).
algoritmo "Somatório"
var
soma, contador: inteiro
inicio
soma ← 0
contador ← 1
enquanto (contador <= 8) faça
soma ← soma + contador
contador ← contador * 2
fimenquanto
fimalgoritmo
Ao final da execução do algoritmo acima, qual será o valor da variável "soma"?
O método de funcionamento de uma estrutura de dados do tipo pilha, no qual só podem ser retirados os elementos na ordem inversa da ordem em que foram inseridos, é conhecido como:
Considere o algoritmo K-Means. Suponha os seguintes pontos: x1=(1,2,5); x2=(3,4,2); x3=(9,5,3); x4=(7,6,1); x5=(2,3,5); x6=(8,7,2). Escolha x1 e x4 como centros iniciais.
Assinale a opção que apresenta corretamente os pontos em que seriam formados os grupos após a primeira iteração e quais seriam os novos centros.
Transformar informações em códigos únicos, acelerando o acesso a dados em estruturas como tabelas é a função da técnica chamada hashing. Ela é uma técnica fundamental na programação que permite armazenar e recuperar dados de forma eficiente. O entendimento do hashing é essencial para otimizar algoritmos e melhorar o desempenho de muitas aplicações.
Sobre essa técnica, analise as assertivas a seguir.
I. Hashing serve para comprimir dados para economizar espaço de armazenamento.
II. Acelerar o acesso a dados, tornando-o mais eficiente, é o principal objetivo da técnica hashing.
III. Transformar texto legível em código binário, entendível pelo computador, é um dos objetivos da técnica hashing.
É correto o que se afirma apenas em
Considere o seguinte algoritmo abaixo feito de acordo com Diagrama de Chapin:
INÍCIO | |||
OBTENHA X1, X2 | |||
RESP = Parte inteira de ((X1 * 2)/X2) | |||
ESCREVA "LESTE" |
ESCREVA "OESTE" |
ESCREVA "NORTE" |
ESCREVA "SUL'' |
FIM |
Se X1 for igual a 4, e X2 for igual a 3, será escrita a palavra:
A estrutura de dados fila também é conhecida por um acrônimo que usa as iniciais de palavras na língua inglesa, refletindo o funcionamento dessa estrutura de dados. Esse acrônimo é:
Seja o algoritmo abaixo, construído via VisuAlg 3.0.7, no qual a função int (arg) retorna à parte inteira de arg:
Algoritmo "ALG1"
Var
-f, g, i, j, I : inteiro
-h: real
Inicio
-g <- 0
-h <- 0
-i <- 0
-j <- 1
-leia (f)
-enquanto (f <> 0) faça
---g <- g + f
---i <- i + 1
---leia (f)
-fimenquanto
-h <- f / i
-I <- int (h)
-enquanto (l>0) faça
---j <- g * I
---I <- I -1
-fimenquanto
-escreva (j)
Fimalgoritmo
Caso sejam fornecidas as seguintes entradas para f: 2, 3, 4, 5 e 0; o valor final de j, que será escrito como resposta, é:
Considere as afirmações abaixo sobre estruturas de dados em árvore.
I – Uma árvore AVL (Adelson-Velskii e Landis) é uma árvore na qual as alturas das subárvores esquerda e direita de cada nó diferem no máximo em um elemento.
II – A árvore B é uma estrutura de dados que foi projetada para minimizar o número de acessos à memória secundária, sendo que cada nó associado pode ter mais de uma chave.
III – Uma Black-Red Tree é uma árvore B+ que possui um bit extra para armazenar a cor de cada nó.
Está CORRETO o que consta em:
A fila é uma estrutura de dados que armazena os elementos de dados seguindo a regra FIFO. Essa regra determina que o primeiro elemento a entrar na fila será:
Estruturas de dados são elementos essenciais no desenvolvimento de soluções, pois permitem dispor e manipular conjuntos de dados de modo específico, permitindo o processamento de dados adequado. Dentre as diversas estruturas de dados existentes, uma delas caracteriza-se por representar um conjunto de objetos e as relações existentes entre eles de modo abstrato, sendo definido por um conjunto de nós ou vértices, e pelas ligações ou arestas, que ligam pares de nós. Assinale a alternativa que apresenta o nome desta estrutura de dados.
Árvores AVL são uma estrutura de dados de árvore binária de busca balanceada, onde a diferença de altura entre as
subárvores esquerda e direita de qualquer nó não deve ser maior que 1. Considere as seguintes operações de rotação para balancear a árvore AVL:
I. Rotação simples à direita (RR).
II. Rotação simples à esquerda (RL).
III. Rotação dupla à direita (DRR).
IV. Rotação dupla à esquerda (DRL).
Dado o seguinte trecho de pseudocódigo para uma inserção em uma árvore AVL:
função inserir_avl(T, chave)
se T é vazia
criar novo nó com chave
senão se chave< T.chave
T.esquerda = inserir_avl(T.esquerda, chave)
se laltura(T.esquerda) - altura(T.direita)| > 1
realizar operação de rotação necessária
senão se chave> T.chave
T.direita = inserir_avl(T.direita, chave)
se laltura(T.esquerda)- altura(T.direita)| > 1
realizar operação de rotação necessária
Qual das seguintes opções descreve corretamente quando a rotação simples à direita (RR) deve ser aplicada durante a inserção?
A lógica matemática é uma área de estudo que utiliza sistemas formais para representar, analisar e inferir informações sobre o mundo real. As funções de avaliação são uma parte importante da lógica matemática, pois permitem avaliar se uma fórmula lógica resulta em um retorno verdadeiro ou falso. Considere a seguinte fórmula lógica e seu respectivo conjunto de atribuições de variáveis:
Fórmula lógica:
∀x (P(x) → Q(x))
Conjunto de atribuições de variáveis:
P(x)={a, b, c}, Q(x)={b, c, d}
Analise o pseudocódigo abaixo, que tenta retornar a verdadeiro ou falso para a fórmula lógica usando as atribuições de variáveis fornecidas:
função avaliar_fórmula(P, Q)
para cada elemento x em P
se x está em P e x não está em Q
retornar falso
retornar verdadeiro
Qual é o resultado da execução do algoritmo, considerando o contexto descrito na questão?
Algoritmos de ordenação são técnicas fundamentais na área da computação e são utilizados para organizar e ordenar coleções de dados, como listas ou arrays, de acordo com critérios específicos. Esses algoritmos têm uma ampla gama de aplicações em sistemas computacionais e são essenciais para a eficiência e eficácia de processos, nas mais diversas áreas do mundo do trabalho. Considere o algoritmo de ordenação ilustrado no pseudocódigo abaixo:
função sort(lista, esquerda, direita)
se esquerda < direita
pivo_index = particionar(lista, esquerda, direita)
sort(lista, esquerda, pivo _index - 1)
sort(lista, pivo_index + 1, direita)
função particionar(lista, esquerda, direita)
pivo = lista[direita] # escolhendo o pivo como último
elemento
i = esquerda - 1
para j de esquerda até direita -1
se lista[j] <= pivo
i=i+ 1
trocar(lista[i], lista[j])
trocar(lista[i + 1 ], lista[direita]) # colocando o pivo em sua
posição correta
retornar i + 1
# Inicializando o algoritmo com os índices apropriados
lista= [valores a serem ordenados]
sort(lista, 0, comprimento(lista)-1)
Qual das alternativas abaixo corresponde ao algoritmo em questão?
A técnica de memória virtual por paginação é organizada em blocos. Esses blocos podem ser alocados em páginas da memória física, mas eventualmente um bloco pode precisar ser substituído para liberar espaço. Assinale a opção que apresenta um algoritmo de substituição de páginas que utiliza um bit adicional, conhecido como bit de referência.
Segundo Farrer (1999), em relação às variáveis compostas, é correto afirmar que:
De acordo com Farrer (1999), um módulo é um grupo de . comandos que constitui um trecho de algoritmo, com uma função bem definida e o mais independente possível em relação ao resto do algoritmo. Assinale a opção que apresenta uma informação INCORRETA sobre os benefícios da divisão do algoritmo em módulos.
Suponha que o seguinte algoritmo seja executado:
Algoritmo
---declare D, K, NUMERO, SOMA numérico
---leia NUMERO
---SOMA ← NUMERO +1
---K ← QUOCIENTE (NUMERO, 2)
---D ← 2
---repita
----------se D> K
--------------então interrompa
----------fim se
----------se RESTO (NUMERO, D) = 0
--------------então SOMA ← SOMA + D
----------fim se
----------D ← D + 1
---fim repita
---escreva SOMA
fim algoritmo
Qual valor será escrito se for lido o valor 10?
No que se refere a vulnerabilidades e ataques a sistemas computacionais e criptografia, julgue o próximo item.
Projetado para velocidade, simplicidade e segurança, o
algoritmo MD (message digest) produz um valor de hash de
128 bites para um tamanho arbitrário da mensagem inserida.