手写算法-LRU

一、思路

FIFO是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址

二、双向链表版本

/**
 * put:
 * 首节点插入
 *
 * get:
 * 尾节点返回移除
 *
 */
public class FIFO {
    int size;
    MyDoubleList list = new MyDoubleList();

    public FIFO(int size) {
        this.size = size;
    }

    public void put(Object data) {
        list.addFirst(data);
    }

    public Object get() {
        Object data = list.getLast();
        list.removeLast();
        return data;
    }
}

版权声明:本文为jiqiren1994原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。