数据结构与算法(5)线性表

1、静态链表
用数组描述的链表叫做静态链表,这种描述方法叫做游标实现法
在这里插入图片描述
2、静态链表的插入操作
在这里插入图片描述
在这里插入图片描述
每当进行插入时,便可以从备用链表上取得第一个结点 作为待插入的新节点

3、静态链表的删除操作
在这里插入图片描述
在这里插入图片描述
4、静态链表优缺点
优点:在插入和删除操作时,只要修改游标,不需要移动元素,从而改进了顺序存储结构中的插入和删除操作需要移动大量元素的缺点
缺点:没有解决连续存储分配(数据)带来的表长难以确定的问题
失去了顺序存储结构随机存储的特性
静态链表是为了给没有指针的编程语言设计的一种实现单链表功能的方法

题目:快速找到未知长度单链表的中间结点
普通方法:先遍历一遍单链表以确定单链表长度L,再从头结点除法循环L/2次找到单链表的中间结点,算法复杂度O(3L/2)
高级方法:快慢指针,设置两个指针*search、*mid都指向单链表的头节点。其中 search的移动速度是mid的两倍,当search指向末尾结点的时候,mid正好就再中间了

5、循环链表
将单链表中终端结点的指针端由空指针改为指向头节点,就使整个单链表形成一个环,这种头尾相接的单链表称为单循环链表
在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章