Skip to content

Predd0o/FIFOcache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Implemente a estratégia First In First Out (FIFO) de cache eviction. Nessa estratégia, quando o cache está cheio e um elemento precisa entrar, o elemento que entrou primeiro deve ser removido (o mais antigo). A ordem de entrada é mantida, independente de quantas vezes um elemento é acessado. Funciona assim: Os elementos são organizados em ordem de chegada. Quando um novo elemento precisa entrar e o cache está cheio, o elemento que está há mais tempo no cache (o primeiro que entrou) deve ser removido. Importante: diferente do LFU, acessar um elemento que já está no cache NÃO altera sua posição - ele continua na mesma posição em que entrou. Implementação Implemente os métodos das classes FIFOEvictionStrategy, FIFOCache e LinkedList. Importante: entenda os testes. Leia. Compreenda. Faça mais testes. Testes são uma excelente forma de especificação de como seu algoritmo deve funcionar. Restrições

Você deve implementar com uma LinkedList e apenas essa estrutura. O código foi disponibilizado. A busca por um elemento no cache é O(n) - não estamos usando outra estrutura além da LinkedList. Adição de um elemento na linkedlist deve ser O(1). Remoção de um elemento da linkedlist deve ser O(1). Seu cache deve ter o tamanho fixo, mesmo sendo implementado com uma linked list. Dica: No FIFO, novos elementos sempre entram no final da lista, e remoções sempre acontecem no início (primeiro que entrou).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages