Questões de Concurso Comentadas sobre algoritmos e estrutura de dados
Foram encontradas 2.519 questões
proc insertionSort(int[] arr)
int tamanho <- tam(arr);
int i, j, aux;
para i de 1 incr 1 até tamanho-1 faça
aux <- arr[i];
para j de i-1 incr -1 até (j >= 0 e aux < arr[j]) faça
arr[j+1] <- arr[j];
arr[j+1] <- aux;
Procedimento XYZ( TABELA, NUMERO DE CODIGOS, CEP);
tipo tabela de conversão = vetor[1: NUMERO DE CODIGOS] conversão;
tipo de conversão = registro inteiro: CA, CN fim registro;
tabela de conversão: TABELA;
inteiro: NUMERODECODIGOS, CEP;
inicio
inteiro comeco, meio, fim;
COMECO <- 1; FIM <- NUMERODECODIGOS;
repita
MEIO ,<-( COMECO + FIM) /2
se CEP <TABELA[MEIO].CA;
então FIM <- MEIO -1;
senão
se CEP>TABELA[MEIO].CA;
então
CEP <- TABELA[MEIO] +1;
senão
Imprima( " Falta CEP", NUMERO);
fim se;
abandone;
fim se;
fim se;
até COMECO> FIM;
fim(XYZ)
I. Uma Pilha é um contêiner de objetos que são inseridos e retirados de acordo com o princípio de que “o último que entra é o primeiro que sai” (LIFO).
II. Exemplo de implementação de uma pilha pode ser os navegadores para a Internet que armazenam os endereços mais recentemente visitados em uma pilha.
III. Pilhas são estruturas de dados muito complexas, porém não estão entre as mais importantes.
IV. É impossível inserir objetos em uma pilha a qualquer momento, mas somente o objeto recentemente inserido poderá ser removido a qualquer momento.
Uma estrutura de dados baseada no princípio FIFO (first in, first out), na qual os elementos que foram inseridos no início são os primeiros a ser removidos.
Assinale a alternativa que identifica corretamente o tipo de estrutura de dados à qual o texto se refere.
No modelo de rede, os dados são representados como um conjunto de registros e as relações entre esses registros podem ser abstraídas para a estrutura de dados em árvore.
Árvore de dados é uma estrutura formada por uma coleção finita de dados, em que um deles é denominado raiz e os demais, folhas. Por serem estruturas disjuntas, não é possível que a árvore seja nula.
Pilha é uma estrutura de dados do tipo lista linear, em que as operações TOP, PUSH e POP são realizadas no topo da pilha e, por isso, são denominadas LIFO.
A estrutura de dados aplicada às linguagens de programação visa, do ponto de vista teórico, identificar e desenvolver modelos matemáticos que resolvam problemas e, do prático, criar representações concretas dos objetos e desenvolver rotinas capazes de atuar sobre essas representações, de acordo com o modelo considerado.
O algoritmo mostrado a seguir resume corretamente a inserção com um leque de, no máximo, sete elementos.
Type leque = record
topo: integer;
memo: array [1..7] of char;
end;
var L:leque;
p.topo: = 0
procedure push (var L:leque; x:char);
begin
if not L.topo>7 then
begin
L.topo :=L.topo+1;
L.memo [L.topo]:= x;
end;
end;
A função mostrada abaixo é um exemplo de algoritmo recursivo.
Function fat (x:integer) : integer;
begin
if x=0 then cfat := 1
else fat := x * cfat (n-1);
end;

Ao final da execução desse algoritmo, o valor de k será igual a