数据结构--单链表

1. 链表的概念及结构

链表是⼀种物理存储结构上⾮连续、⾮顺序的存储结构,数据元素的逻辑顺序是通过链表
中的指针链接次序实现的 。


2.节点从头到尾的打印


3.尾插

要尾插必然要申请新的节点:

申请新的节点,如果链表是空的,直接将新的节点赋给第一个节点

若不是空的,先找尾,看那个节点next指针指的NULL,找到之后并将新的节点赋给它


4.头插

在这之前先判断是否为空,在申请新节点。


5.尾删

定义两个指针,用prev记录ptail前一个结点,若ptail->next为空,prev为倒数第二个节点,先把倒数第二个节点的next指针置为NULL,在释放最后一个,不然会造成内存泄漏。


6.头删


7.查找


8.在指定位置之前插入数据,在指定位置之后插入数据


9.删除pos节点


10.删除pos之后的节点,销毁链表


11.测试

相关推荐
却话巴山夜雨时i24 分钟前
74. 搜索二维矩阵【中等】
数据结构·算法·矩阵
sin_hielo29 分钟前
leetcode 3512
数据结构·算法·leetcode
Elias不吃糖31 分钟前
LeetCode--130被围绕的区域
数据结构·c++·算法·leetcode·深度优先
念越42 分钟前
二叉树的核心概念与遍历实现(基础详解版)
数据结构
im_AMBER44 分钟前
数据结构 12 图
数据结构·笔记·学习·算法·深度优先
程序员-周李斌44 分钟前
LinkedList 源码深度分析(基于 JDK 8)
java·开发语言·数据结构·list
咫尺的梦想0071 小时前
链表——删除链表的倒数第 N 个结点
数据结构·链表
梁bk1 小时前
Redis底层数据结构 -- ziplist, quicklist, skiplist
数据结构·数据库·redis
myw0712051 小时前
湘大头歌程-Ride to Office练习笔记
c语言·数据结构·笔记·算法