Foto de Ruty S.
Ruty há 2 anos
Enviada pelo
Site

Lista duplamente encadeada

Considere que se tem a implementação de uma DoubleLinkedList com os métodos
size() — retornando um inteiro —, isEmpty() — retornando um booleano — e
getHead() e getLast() — retornando objetos da classe DoubleLinkedListNode, que,
por sua vez, possui os seguintes métodos: getData() — retornando uma string —,
isNIL() — retornando um booleano — e getNext() e getPrevious() — retornando
objetos da classe DoubleLinkedListNode. Escreva um método em Java que, dada uma
lista de strings do tipo DoubleLinkedList, indique se há ocorrências de uma determinada
string na lista. Comente o comportamento assintótico do seu método.

boolean haOcorrencia(DoubleLinkedList palavras, String p) {
//...
}

1 resposta
Professora Ilze O.
Respondeu há 2 anos
Contatar Ilze
boolean haOcorrencia(DoubleLinkedList palavras, String p) { DoubleLinkedListNode current = palavras.getHead(); while (!current.isNIL()) { if (current.getData().equals(p)) { return true; } current = current.getNext(); } return false; } Este método percorre a lista encadeada da cabeça até a cauda, comparando cada elemento com a string p. Se a string p for encontrada, o método retorna true. Caso contrário, se a lista inteira for percorrida sem encontrar p, o método retorna false. O comportamento assintótico deste método é O(n), onde n é o tamanho da lista encadeada. Isso ocorre porque, no pior caso, o método precisa percorrer toda a lista para verificar se a string p está presente ou não.

Um professor já respondeu

Envie você também uma dúvida grátis
Ver resposta
Tire dúvidas com IA
Resposta na hora da Minerva IA
Enviar dúvida
Minerva IA
do Profes
Respostas na hora
100% no WhatsApp
Envie suas dúvidas pelo App. Baixe agora
Prefere professores para aulas particulares ou resolução de atividades?
Aulas particulares
Encontre um professor para combinar e agendar aulas particulares Buscar professor
Tarefas
Envie sua atividade, anexe os arquivos e receba ofertas dos professores Enviar tarefa