Questões de Concurso
Comentadas sobre estrutura de dados em algoritmos e estrutura de dados
Foram encontradas 1.295 questões
Com base nisso, assinale a opção que indica o método de busca que é mais eficiente quando aplicado em uma lista ordenada contendo milhares de elementos.
No que se refere à ciência de dados, julgue o item seguinte.
Em aprendizado supervisionado, o algoritmo random forest utiliza múltiplas árvores de decisão para melhorar a precisão das previsões e reduzir o risco de overfitting.
Em uma aula para o ensino médio, o professor Lucas solicitou que os alunos organizassem uma lista de tarefas em uma ordem específica, utilizando fichas de papel. Ele explicou que o processo simula a organização de dados em uma estrutura chamada “fila”, onde a primeira tarefa a entrar é a primeira a ser realizada. Os alunos discutiram outras formas de organizar as tarefas e notaram que algumas são mais eficientes dependendo do contexto.
Com base no conceito de filas em estruturas de dados, a principal característica desse tipo de organização é
Código 01 import java.util.Stack; public class PilhaExemplo { public static void main(String[] args) { Stack<Integer> pilha = new Stack<>(); pilha.push(10); pilha.push(20); pilha.push(30); System.out.println("Elementos removidos da pilha:"); while (!pilha.isEmpty()) { System.out.println(pilha.pop()); } } } Código 02 import java.util.LinkedList; import java.util.Queue; public class FilaExemplo { public static void main(String[] args) { Queue<Integer> fila = new LinkedList<>(); fila.add(10); fila.add(20); fila.add(30); System.out.println("Elementos removidos da fila:"); while (!fila.isEmpty()) { System.out.println(fila.poll()); } } }
Com base nos dois trechos de código apresentados, assinale a alternativa correta ao comparar o código da pilha com o código da fila.
public class HeapSort { public void heapSort(int arr[]) { int n = arr.length; for (int i = n / 2 - 1; i >= 0; i--) { heapify(arr, n, i); } for (int i = n - 1; i > 0; i--) { int temp = arr[0]; arr[0] = arr[i]; arr[i] = temp; heapify(arr, i, 0); } } void heapify(int arr[], int n, int i) { int maior = i; int esquerda = 2 * i + 1; int direita = 2 * i + 2; if (esquerda < n && arr[esquerda] > arr[maior]) { maior = esquerda; } if (direita < n && arr[direita] > arr[maior]) { maior = direita; } if (maior != i) { int temp = arr[i]; arr[i] = arr[maior]; arr[maior] = temp; heapify(arr, n, maior); } } public static void main(String args[]) { int arr[] = {12, 11, 13, 5, 6, 7}; int n = arr.length; HeapSort heapSort = new HeapSort(); heapSort.heapSort(arr); System.out.println("Array ordenado: "); for (int i : arr) { System.out.print(i + " "); } } }
Considerando o algoritmo apresentado, qual é a principal característica deste algoritmo de ordenação?
( ) Uma pilha é uma lista linear na qual a inserção de elementos ocorre em uma extremidade. chamada de fim da pilha, e a remoção ocorre na outra extremidade, chamada de frente da pilha. Isso segue a abordagem First In, First Out (FIFO), onde o primeiro elemento inserido é o primeiro a ser removido.
( ) Uma fila é uma lista linear na qual a inserção e a remoção de elementos ocorrem apenas em uma extremidade, chamada de topo da fila. Isso segue a abordagem Last In, First Out (LIFO), onde o último elemento inserido é o primeiro a ser removido.
( ) Uma lista estática é uma estrutura de dados na qual cada elemento, além de armazenar seu valor, contém uma referência ao próximo elemento na lista. Isso permite a construção de listas de tamanho variável. onde os elementos não precisam estar necessariamente em posições contíguas de memória.
Qual alternativa preenche, CORRETAMENTE, os parênteses, na ordem em que aparecem?
Analise as seguintes afirmações sobre a propriedade da Árvore Binária de Busca:
I. A operação de busca em uma BST é eficiente devido à estrutura ordenada.
II. Inserir um novo valor em uma BST sempre resulta em uma árvore válida.
III. Excluir um nó folha em uma BST pode resultar em uma árvore inválida.
IV. Uma BST pode ser utilizada para armazenar dados não ordenados.
Estão corretas as afirmações:
I Listas são estruturas de dados mais simples, que podem ser implementadas de forma dinâmica.
II Pilhas são um tipo de Lista, em que o elemento a ser removido é sempre o último inserido.
III Matrizes são estruturas de dados sempre definidas com o número de linha igual ao número de colunas.
IV Árvores são um tipo especial de matriz, em que cada linha possui o dobro de elementos da linha anterior.
Das afirmações, estão corretas
I – Se o grafo contém um ciclo, nenhuma ordenação topológica é possível.
II – O algoritmo de Kruskal é usado para encontrar a árvore geradora mínima em um grafo.
III – O algoritmo de caminhos mínimos de Dijkstra considera que todos os pesos de arestas no grafo de entrada são não negativos.
CORMEN, Thomas H. Algoritmos: teoria e prática. Rio de Janeiro: Elsevier, 2012.
Assinale a alternativa CORRETA:
I. Um arquivo é um conjunto de registros (ou seja, é uma estrutura de dados) no qual cada registro não ocupa uma posição fixa dentro da estrutura, não possuindo, portanto, tamanho preestabelecido.
II. Os registros são formados por unidades de informação denominadas campos e, por serem do mesmo tipo, tornam os registros um tipo de dado homogêneo por definição.
III. Os arquivos têm como principal finalidade o armazenamento de grandes quantidades de informação por um grande período de tempo.
IV. De forma genérica, podemos admitir que todo arquivo possui maneiras semelhantes de ser manipulado, independentemente de como foi concebido.
Estão CORRETAS as afirmações:
Sobre uma árvore binária de busca (BST), assinale a opção CORRETA: