Buscar

ESTRUTURA DE DADOS av 3

Prévia do material em texto

1a Questão (Ref.:201507411464) Pontos: 0,1 / 0,1 
O vetor {5,4,6,3,1,2} quando ordenado através do Bubble Sort, possui quantas comparações e 
quantas trocas? 
 
 
10 comparações e 3 Trocas 
 
10 comparações e 4 Trocas 
 10 comparações e 9 Trocas 
 
10 comparações e 10 Trocas 
 
10 comparações e 8 Trocas 
 
 
 
2a Questão (Ref.:201507411276) Pontos: 0,1 / 0,1 
Sobre estrutura de dados, identifique o que está correto afirmar. 
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles 
são colocados e retirados por um único lado e são ordenados pelo princípio LIFO (last in first 
out). Assim, sempre que um elemento é adicionado ou retirado seu topo é alterado. 
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na 
recursividade e pelos compiladores, na passagem de parâmetros para as funções. 
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, 
sendo normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém 
campos de diferentes tipos. 
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se 
conforme o elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto 
podem ser feitos sequencialmente como diretamente. 
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são 
ordenados pelo princípio LIFO (last in first out). 
 
 
I, III, IV e V. 
 
I, III e V. 
 I, II e III. 
 
II, III, IV e V. 
 
II, IV e V. 
 
 
 
3a Questão (Ref.:201507411597) Pontos: 0,1 / 0,1 
Sobre listas encadeadas, é INCORRETO afirmar que: 
 
 
o final da lista faz uma referência para null 
 
são acessadas pelo primeiro nodo da lista 
 
os dados são armazenados dinamicamente 
 possuem tamanho fixo 
 
pilhas e filas são versões limitadas de listas encadeadas 
 
 
 
4a Questão (Ref.:201507411485) Pontos: 0,0 / 0,1 
O que será mostrado pelo programa abaixo: 
#include 
using namespace std; 
 
int a,b; 
void dobro(int x){//x passado por valor 
 x=2*x; 
} 
int triplo(int y){//y passado por valor 
 return 3*y; 
} 
void altera(int x, int &y){//x passado por valor e y passado por 
referencia 
 x=x+a; 
 y=x+b; 
} 
int main (){ 
 a=2; 
 b=3; 
 dobro(a); 
 b=triplo(b); 
 altera(a,b); 
 cout<<a<<b;< pre=""> 
} 
<<="" pre=""> 
 
 
 
 
</a<<b;<> 
 
 
9 e 16 
 
2 e 9 
 4 e 9 
 
4 e 12 
 2 e 13 
 
 
 
5a Questão (Ref.:201507411316) Pontos: 0,1 / 0,1 
Qual das inicializações de ponteiros apresentadas abaixo está correta? 
 
 
int *p = new *int; 
 
int *p = create int; 
 int *p = new int; 
 
int *p = new int*; 
 
int *p = new int[];

Continue navegando

Outros materiais