【❂Java集合】循环链表和双向链表的区别是是什么

最后一个结点指针指向不同

在建立一个循环链表时,必须使其最后一个结点的指针指向表头结点,而不是像双向链表那样置为NULL。此种情况还用于在最后一个结点后插入一个新的结点。

判断链域值不同

在判断是否到表尾时,是判断该结点链域的值是否是表头结点,当链域值等于表头指针时,说明已到表尾。而非像单链表那样判断链域值是否为NULL。

访问方式

循环链表:可以从任何一个结点开始,顺序向后访问到达任意结点

双向链表:可以从任何结点开始任意向前向后双向访问

操作

循环链表:只能在当前结点后插入和删除

双链表:可以在当前结点前面或者后面插入,可以删除前趋和后继(包括结点自己)

存储

循环链表存储密度大于双链表

posted @   残城碎梦  阅读(53)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2022-05-14 【专题-Java】JDK动态代理和CGLIB动态代理的区别
2022-05-14 【专题-Java】 Comparator与Comparable有什么区别?
2022-05-14 【专题-Java】静态代理和动态代理的区别
2022-05-14 【专题-Java】BIO、NIO、AIO 有什么区别?
2022-05-14 【专题-Java】 String,Stringbuffer,StringBuilder的区别
2022-05-14 【专题-Java】抽象类和接口有什么区别
2022-05-14 【专题-Java】Java 8新增了哪些特性?
点击右上角即可分享
微信分享提示