Sobre o trecho de codigo:
int* intPointer;
int alpha;
intPointer = α
Assinale a alternativa verdadeira:
Ocorrerá um erro em tempo de compilação, porque intPointer não pode receber o valor retornado por &alpha.
Não ocorrerá erro em tempo de compilação, mas o programa gerará erro em tempo de execução, porque intPoint não pode receber o valor retornado por &alpha.
A variável alpha terá um valor diferente daquele conteúdo que está sendo apontado por intPointer na memória.
A variável intPointer aponta para alpha. Nesse caso, alterações podem ser feitas diretamente usando alpha ou indiretamente com intPointer.
A variável alpha é um ponteiro para uma região de memória, podendo acessar essa memória indiretamente.
Sobre as estruturas de dados pilha e fila, implementadas tanto com vetores quanto com listas encadeadas, é correto afirmar:
Uma pilha implementada com vetores possui operações de push e pop em tempo constante. No caso da implementação com listas encadeadas, a operação de pop possui tempo de execução determinado pelo número de elementos.
Uma fila implementada com vetores possui operações de enqueue e dequeue em tempo constante. No caso da implementação com listas encadeadas, a operação de dequeue possui tempo de execução determinado pelo número de elementos.
Uma pilha implementada com vetores possui operações de push e pop em tempo constante. No caso da implementação com listas encadeadas, a operação de push possui tempo de execução determinado pelo número de elementos.
Tanto pilha ou fila implementada com vetores, quanto pilha ou fila implementada com listas encadeadas possuem operações de inserção e remoção de elementos em tempo constante.
Uma fila implementada com vetores possui operações de enqueue e dequeue em tempo constante. No caso da implementação com listas encadeadas, a operação de enqueue possui tempo de execução determinado pelo número de elementos.
O código a seguir implementa um método em uma dada estrutura de dados, que pode ser uma pilha, implementada em aula na classe Stack, ou uma fila, implementada em aula na classe Queue. No código, a variável "structure" é um ponteiro para o início da estrutura de dados.
void Classe::metodo(itemType item){
if(!isFull()){
NodeType* location;
location->info =item;
location->next = structure;
structure = location;
}
}
Sobre ele, é possível afirmar que:
O código implementa a função dequeue da classe Queue, sendo que a estrutura interna é uma lista encadeada.
O código implementa a função push da classe Stack, sendo que a estrutura interna é um vetor.
O código implementa a função push da classe Stack, sendo que a estrutura interna é uma lista encadeada.
O código implementa a função enqueue da classe Queue, sendo que a estrutura interna é uma lista encadeada.
O código implementa a função enqueue da classe Queue, sendo que a estrutura interna é um vetor.
Soluções para a tarefa
Resposta:
A resposta da última pergunta é: "O código implementa a função push da classe Stack, sendo que a estrutura interna é uma lista encadeada."
Explicação:
De acordo com a aula, o código para a inserção de elementos do tipo pilha em lista encadeada é:
void Stack::push (ItemType item) {
if (!isFull() ) {
NodeType * location;
location = new NodeType;
location -> info = item;
location -> next = structure;
} else {
throw "Stack is already full";
}
}
Sendo assim, o código de função push da classe Stack de uma lista encadeada.
Resposta:
9/10
RESPOSTAS
PERGUNTA 1
1. Sobre as estruturas de dados pilha e fila, implementadas tanto com vetores quanto com listas encadeadas, é correto afirmar:
Tanto pilha ou fila implementada com vetores, quanto pilha ou fila implementada com listas encadeadas possuem operações de inserção e remoção de elementos em tempo constante.
PERGUNTA 2
Sobre a estrutura de dados fila com implementação com um vetor, é possível afirmar que:
Filas são estruturas que garantem acesso justo a recursos compartilhados. Isso ocorre porque o primeiro elemento a entrar na fila (o que pode ser interpretado como pedir acesso a um recurso) será o primeiro a sair (ser atendido).
PERGUNTA 3
Sobre listas sequenciais e listas encadeadas, é correto afirmar que:
Para a busca binária funcionar com desempenho em tempo O(log n), precisamos da propriedade de que cada elemento possa ser acessado em tempo constante dado o índice. Nesse caso, é requerida uma lista linear sequencial, não sendo interessante usar lista encadeada.
PERGUNTA 4 - Eu errei esta Questão
Sobre os recursos e as regras de sintaxe da linguagem C++, assinale a opção correta.
A escolha da passagem de parâmetro por valor ou por referência importa por questões de desempenho, mas não altera o comportamento dos programas. Em outras palavras, se alguém trocar todas as passagens de parâmetro por valor para passagem de parâmetros por referência (e vice-versa), o programa executará da mesma maneira.
PERGUNTA 5
Sobre o trecho de código mostrado a seguir:
IMAGEM:
Assinale a alternativa verdadeira:
A variável intPointer aponta para alpha. Nesse caso, alterações podem ser feitas diretamente usando alpha ou indiretamente com intPointer.
PERGUNTA 6
Sobre a linguagem C++, é correto afirmar que:
Possui tipagem estática, então as variáveis não podem mudar de tipo após serem declaradas.
PERGUNTA 7
1. Sobre alocação dinâmica, é correto afirmar que:
Alocação dinâmica permite alocar memória sem a necessidade de definir em tempo de compilação o tamanho a ser utilizado, dado que a alocação ocorre em tempo de execução.
PERGUNTA 8
1. Sobre alocação de vetores em C++, é correto afirmar que:
Todos os elementos alocados em um vetor devem ser do mesmo tipo, e o tamanho do vetor deve ser informado antes de fazer a utilização do mesmo, não podendo ser aumentado ou diminuído posteriormente.
PERGUNTA 9
Sobre a estrutura de dados pilha com implementação com um vetor, é possível afirmar que:
O comportamento de uma pilha é semelhante ao comportamento do botão "desfazer" de editores de texto. Ao acionar o desfazer, o último comando inserido é o primeiro a ser desfeito.
PERGUNTA 10
O código a seguir implementa um método em uma dada estrutura de dados, que pode ser uma pilha, implementada em aula na classe Stack, ou uma fila, implementada em aula na classe Queue. No código, a variável "structure" é um ponteiro para o início da estrutura de dados.
Sobre ele, é possível afirmar que:
O código implementa a função push da classe Stack, sendo que a estrutura interna é uma lista encadeada.
Explicação:
Explicação:
resposta correta (Para efetuar uma passagem de parâmetros por referência, colocamos o operador & antes do nome da variável.)