一、链表的初步认识:
从上一篇中,我们已经知道了顺序表,但是从顺序表的插入和删除来看,是比较麻烦的,时间复杂度为O(n),因此这里就有了另外一种结构:链表。链表就是逻辑结构上连续,但是物理结构上不一定连续。对于链表来说,一共有8种链表。
1 单向和双向的

在这其中,第一种是单向的,也是没有头结点的,就类似有傀儡节点;第二种是双向的,也是有类似的傀儡节点,但是要注意头和尾节点,中间的插入和删除需要注意。
2 带头或者不带头的

3 循环或者不循环的
分类别就是上面的三种类别,组合起来就是8种。
但是用的最多的还是:
无头单向非循环的链表,结构:

二:链表的实现

老规矩,咱就是说,直接上代码
首先是定义节点:
class LinkNode{
public int data;
public LinkNode next;
public LinkNode(int data){
this.data=data;
}
}
(1)addFirst
本文详细介绍了链表的基础知识,包括单向和双向链表的类型,以及如何实现无头单向非循环链表的常见操作,如头插法、尾插法、获取链表长度、判断下标合法性、插入指定位置、查找元素、删除元素等。此外,还提供了相应的Java代码示例。
最低0.47元/天 解锁文章
3262

被折叠的 条评论
为什么被折叠?



