Read_LinkedList

来源:互联网 发布:建站工具源码 编辑:程序博客网 时间:2024/06/05 16:22

总结:

1. LinkedList基于双向链表实现(Head节点[last,null,first]),实现链表、队列、栈的功能;

2. 查找时,针对null存在一个for语句,代表LinkedList是允许值为null;
3. Entry<E> entry(int index)方法,由于LinkedList是不存在下标index的,要指出元素必须遍历链表,
    源码实现了一个加速过程。通过index与size比较大小,若index<size/2,则for从0往后遍历到index;
    若index>size/2,就从位置size遍历到位置index处(尾至前遍历)。尽管如此,效率依然比较低。
4. 结点Entry类([element,next,previous])

5. JDK1.7去掉了Head节点,添加 transient Node<E> first 和 transient Node<E> last 代替其功能

详细解读传送门: https://github.com/Ahagpp/JAVA/blob/master/Collection/LinkedList.java


0 0
原创粉丝点击