Questões de Algoritmos e Estrutura de Dados - Estrutura de Dados para Concurso
Foram encontradas 1.370 questões
Estruturas de pilhas, filas e árvores binárias são amplamente utilizadas para a construção de algoritmos e programas de computador. Acerca dessas estruturas, julgue o item subsecutivo.
Nas estruturas de pilhas, a inserção de um novo item ou a remoção de um item já existente ocorre tanto na extremidade de baixo quanto no topo da pilha.Estruturas de pilhas, filas e árvores binárias são amplamente utilizadas para a construção de algoritmos e programas de computador. Acerca dessas estruturas, julgue o item subsecutivo.
Uma estrutura do tipo árvore é considerada binária se e somente se um conjunto infinito de elementos denominados nós existir.O processo de otimização de consultas é composto de um grande conjunto de etapas, uma dessas etapas envolve a construção de árvores de consulta, também conhecidas por árvores de sintaxe abstrata.
Uma árvore de consulta é uma estrutura de dados do tipo
I. A árvore B de ordem M possui raiz com, no mínimo 2, e, no máximo, M subárvores;
II. O “B” de árvore B refere-se à mesma ser uma árvore binária;
III. É impossível a construção de uma árvore B de ordem um;
IV. Todos os nós externos de uma árvore B devem estar no mesmo nível;
V. Uma árvore B com n nós internos é uma árvore M-múltipla de busca balanceada com altura da ordem de O(log n).
Verifica-se que
Assinale cada afirmativa abaixo como verdadeira (V) ou falsa (F). Em seguida, marque a opção que corresponde à sequência correta.
( ) Uma árvore não-vazia é balanceada AVL se, pelo menos, uma de suas árvores, esquerda ou direita, for balanceada AVL;
( ) As árvores perfeitas são árvores balanceadas AVL;
( ) Uma boa condição de balanceamento AVL deve assegurar que a altura de uma árvore com n nós é da ordem de O(log n);
( ) Uma árvore AVL é uma árvore balanceada pela altura;
( ) Ao inserir ou remover um item em uma árvore AVL, o custo adicional para balancear esta árvore é da ordem de O(n/2).
Árvores são estruturas não-lineares usadas, frequentemente, na representação de uma hierarquia. Considere as seguintes afirmações:
I. Apesar do nome, as árvores binárias NÃO são úteis na representação de expressões matemáticas que envolvam operações binárias;
II. Uma árvore binária é um caso particular de uma árvore N-ária, onde N=2;
III. Uma árvore N-ária é uma variação onde os nós da árvore podem ter subárvores dentro do intervalo [0,N];
IV. Uma árvore binária é constituída por um conjunto finito de nós que pode ser vazio, ou consistir em uma raiz e duas árvores binárias distintas;
V. Ao contrário do percurso em pós-ordem em árvore binária, no percurso em pré-ordem, o nó raiz é o último a
ser visitado.
Sobre pilhas e filas, analise as afirmativas a seguir:
I. As operações de push e pop são responsáveis, respectivamente, por inserir e remover itens do início da fila;
II. A fila é um tipo de lista linear conhecida como LIFO (Last In First Out);
III. O método de acesso getTop é responsável por retornar o elemento do topo da pilha;
IV. A pilha é um tipo de dado abstrato em que a inserção de um item sempre se dá em seu topo;
V. Pilhas e filas são tipos abstratos de dados que se distinguem pela forma como se dão a inserção e remoção de itens em suas estruturas.
Estão(está) CORRETA(S) somente as afirmativas
Uma lista encadeada é o melhor e mais simples exemplo de estrutura de dados dinâmica que utiliza ponteiros em sua implementação. O primeiro nó de uma lista é conhecido como cabeça, do inglês head. Se uma lista está vazia, então o valor da cabeça ou head é nulo, do inglês NULL. Com base nisso, analise os trechos de código abaixo que implementam algumas ações sobre uma lista encadeada em linguagem C.
Sobre os trechos de código acima, é INCORRETO afirmar que:
Suponha a estrutura de dados E, cujo algoritmo de inserção de um novo valor é representado pelo seguinte pseudocódigo, onde M é o número de posições disponíveis em memória:
se t ≠ M então
t := t +1
E(t) := novo-valor
senão overflow
Qual o tipo da estrutura de dados E?
Considerando uma estrutura de dados do tipo fila, e a seguinte sequência de comandos sobre essa fila (sendo que o comando Push representa uma inserção de elemento e o comando Pop representa uma exclusão de elemento) e considerando também que a fila estava inicialmente vazia:
Push 3, Push 5, Pop 3, Push 7, Pop 5, Push 9, Push 8
Após a execução dessa sequência de comandos, o conjunto de elementos que resulta na fila é: