Questões de Algoritmos e Estrutura de Dados para Concurso

Foram encontradas 2.074 questões

Q2427603 Algoritmos e 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?

Alternativas
Q2427602 Algoritmos e Estrutura de Dados

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?

Alternativas
Q2427601 Algoritmos e Estrutura de Dados

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?

Alternativas
Q2425456 Algoritmos e Estrutura de Dados

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.

Alternativas
Q2425454 Algoritmos e Estrutura de Dados

Segundo Farrer (1999), em relação às variáveis compostas, é correto afirmar que:

Alternativas
Respostas
136: B
137: C
138: E
139: E
140: A