Questões de Concurso Sobre algoritmos e estrutura de dados
Foram encontradas 3.260 questões
algoritmos e componentes de sistemas operacionais.
Considere uma tabela hash H, onde H[i] denota uma posição da tabela. H é implementada usando uma função h(k) para
determinar a posição i de armazenamento, k sendo a chave do elemento de dados x a ser armazenado em H, e denotada por
k = chave[x]. H é um hash com encadeamento, ou seja, cada H[i] é uma lista encadeada que armazenará os elementos de
dados que, de outra forma, colidiriam para a posição. Nesta implementação, as listas são duplamente encadeadas, ou seja,
cada elemento e da lista armazena também os ponteiros proximo[e] e anterior[e]. Cada lista L possui ainda o valor inicio[L],
que aponta para o primeiro elemento da lista. NIL representa um ponteiro vazio.

O pseudocódigo a seguir mostra uma operação nesta estrutura, porém apresenta erro em uma de suas linhas. As linhas estão
numeradas apenas para facilitar a correspondência com as alternativas.

Considere uma tabela hash H, onde H[i] denota uma posição da tabela. H é implementada usando uma função h(k) para
determinar a posição i de armazenamento, k sendo a chave do elemento de dados x a ser armazenado em H, e denotada por
k = chave[x]. H é um hash com encadeamento, ou seja, cada H[i] é uma lista encadeada que armazenará os elementos de
dados que, de outra forma, colidiriam para a posição. Nesta implementação, as listas são duplamente encadeadas, ou seja,
cada elemento e da lista armazena também os ponteiros proximo[e] e anterior[e]. Cada lista L possui ainda o valor inicio[L],
que aponta para o primeiro elemento da lista. NIL representa um ponteiro vazio.

O pseudocódigo a seguir mostra uma operação nesta estrutura, porém apresenta erro em uma de suas linhas. As linhas estão
numeradas apenas para facilitar a correspondência com as alternativas.

Na análise de um problema de estrutura de dados, utilizou-se uma árvore binária para representar uma árvore genérica (não-binária) qualquer. Ao se transformar a árvore genérica na árvore binária, observou-se que esta fi cou distribuída da seguinte forma:
No nível 0 ou raiz - um elemento; no nível 1 - um elemento; no nível 2 - dois elementos; no nível 3 - quatro elementos e, fi nalmente, no nível 4 - oito elementos.
Quanto à sua composição, é correto afi rmar que a árvore genérica possui no seu nível 0 ou raiz um elemento, e no seu nível 1
I. Considerando entradas totalmente desordenadas, em um algoritmo de "Ordenação por Inserção", o tempo consumido no processamento para ordenar uma entrada de mil números é o mesmo que o tempo gasto para ordenar uma entrada de três números, quando executados em uma mesma máquina com arquitetura RISC.
II. Considerando o tempo de execução do pior caso de um algoritmo, na pesquisa de um banco de dados em busca de um determinado fragmento de informação, o pior caso do algoritmo de pesquisa ocorrerá, na maioria das vezes, quando a informação não estiver presente no banco de dados.
III. Um algoritmo é dito recursivo quando, para resolver um problema, ele chama internamente vários outros algoritmos duas ou mais vezes para lidar com subproblemas intimamente relacionados.
IV. Para qualquer número inteiro N e qualquer número inteiro positivo K, o valor N mod K é o resto do quociente N/K.
Indique a opção que contenha todas as afi rmações verdadeiras.

Nas linhas numeradas de 1 a 39 acima, apresenta-se um trecho de código
na linguagem Java, correto e plenamente funcional. A execução do
programa é realizada em um ambiente adequado para execução do código,
sem erros de runtime. O usuário inicia a execução do programa por meio
da linha de comando java Reverso 3.
Considerando essas informações, julgue os próximos itens acerca dos
conceitos de programação.

Nas linhas numeradas de 1 a 39 acima, apresenta-se um trecho de código
na linguagem Java, correto e plenamente funcional. A execução do
programa é realizada em um ambiente adequado para execução do código,
sem erros de runtime. O usuário inicia a execução do programa por meio
da linha de comando java Reverso 3.
Considerando essas informações, julgue os próximos itens acerca dos
conceitos de programação.

Qual a ordem de complexidade do pior caso desse algoritmo?

Qual o valor calculado pela função se o argumento n for um número inteiro maior do que zero?
Os números abaixo são inseridos na seguinte ordem:
10, 15, 8, 3, 4, 12, 20, 9.
Que número(s) compõe(m) o nó raiz?

A complexidade de tempo desse algoritmo, no pior caso, em que n corresponde ao número de elementos do vetor v, é