博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
chapter3 循环链表 && 双向链表
阅读量:3935 次
发布时间:2019-05-23

本文共 531 字,大约阅读时间需要 1 分钟。

3 循环链表 && 双向链表

循环链表的结构

[(img-gFmzlBYP-1570333963595)(en-resource://database/1510:0)]

其实循环链表和单链表的主要差异就在于循环的判断条件上,原来是判断p->next是否为空,现在则是p->next不等于头结点,则循环未结束。

所以插入删除什么的都是一样的

循环链表的合并

在这里插入图片描述

在这里插入图片描述
代码部分

// 保存A 和B 的两个头结点p = rearA->next;q = rearB->next;// 连接两个链表  rearA -> next = rearB->next->next;rearB -> next = p;// 现在rearB指向了尾节点 把rearA指针置空并释放B原来的头结点rearA = NULL;free(q);

双向链表的结构

头指针的结构

在这里插入图片描述
非空的循环的带头结点的双向链表
在这里插入图片描述

双向链表插入操作

在这里插入图片描述

// 首先搞定 要插入结点的指针域s->next = p->next;s->prior = p;// 接着搞定原始链表的指针域p->nest = s;s->next->prior = s;

双向链表删除操作

在这里插入图片描述

// 就两步 //1. 搞定前后结点指针域p->next->prior = p->prior;p->prior->next = p->next;//2. 释放当前结点free(p);

总结一下

在这里插入图片描述

转载地址:http://pjzwi.baihongyu.com/

你可能感兴趣的文章
watchguard ssl100恢复出厂化设置
查看>>
CentOS 一键安装Cacti 1.2.3脚本
查看>>
CentOS 7系统上制作Clonezilla(再生龙)启动U盘并克隆双系统
查看>>
fail2ban的使用-控制连接数
查看>>
btkill-连接数控制
查看>>
NAT+www的发布
查看>>
dhcp.conf
查看>>
关于win10的升级
查看>>
cacti突然不显示流量
查看>>
发现一个好工具记录一下,U盘启动ISO文件。
查看>>
centos7下配置网卡以及查询网卡UUID
查看>>
适用于旧计算机的10款最佳轻量级Linux发行版
查看>>
在VMware Workstation中批量创建上千台虚拟机
查看>>
linux常用软件收集
查看>>
linux查看桌面环境
查看>>
centos8安装ntfs-3g后,不能自动挂载U盘(NTFS格式)
查看>>
Linux安装显卡驱动
查看>>
使用minicom
查看>>
linux常用外设-打印机指纹和蓝牙的安装管理
查看>>
记录一下安装在移动硬盘上的fedora linux v33在各种笔记本下的兼容性
查看>>