数据结构
kira_981019
这个作者很懒,什么都没留下…
展开
-
数据结构 单链表的基本操作
---------------start reading---------------前言原创 2019-03-13 23:13:37 · 480 阅读 · 0 评论 -
数据结构 循环链表
---------------start reading---------------前言在知道熟悉单链表的操作后,我们知道链表有一个数据域存放具体的数据,有一个next域存放后继的地址,如果我们将尾结点的next域指向之前的任意一个节点,那么就形成了一个环。下面我们就来说说循环链表如图就是一个循环链表在对循环链表进行操作时要注意尾结点的后继不是NULL,而是plist循环条件要从p...原创 2019-03-13 23:14:33 · 311 阅读 · 0 评论 -
数据结构 双向链表
---------------start reading---------------前言双向链表是链表的一种,都是以链式结构存储。与单链表不同的是,双向链表可以向前找前驱,而单链表只能自己定义前驱而且不能倒退。双向链表有与单链表不同的结构,但实现的功能基本是一样的。双向链表的结构双向链表的操作一定要注意,要改前驱地址。特别注意尾结点,当需要改后继的前驱的时候,尾结点不能用p->p...原创 2019-03-15 17:04:15 · 168 阅读 · 0 评论 -
数据结构 无头结点的单链表
---------------start reading---------------前言头结点是用来标记单链表的一个标志,有些时候我们可以不使用头结点,这时候操作就完全不一样了。如何建立一个无头结点的单链表?不能在头结点的数据域中放数据再变成假的第一个数据节点在进行操作,那是自己骗自己。在单链表中我们直接头结点进行解引用,但无头结点的链表最初其实就是一个指针,没有指向任何结点,在进行插入...原创 2019-03-15 17:52:38 · 2418 阅读 · 0 评论 -
数据结构 链表的逆置(经典重点题!!)
---------------start reading---------------链表逆置就是把最后以一个提到坐前面,倒数第二个放到第二个……直到第一个到最后一个。由于链表没有下标,所以不能借助下表来实行数据的逆置,要靠空间的转移来完成链表的逆置方法一利用头插思想(最重要!)将头节点提出来,将第一个数据结点next置成NULL进行头插,再将第二个数据结点进行头插,第三个数据结点进行头...原创 2019-03-15 20:01:46 · 2005 阅读 · 0 评论 -
数据结构 栈的概念的基本操作
---------------start reading---------------前言栈是一种特殊的结构,遵循先进后出的原则,若我们输入12345,则会输出54321栈的示意图如何实现栈的功能呢?首先我们来看一看顺序栈(利用数组)是如何定义及操作定义顺序栈有栈顶实际上是typedef struct SeqStack{ int *elem; int top;//栈顶指针,类...原创 2019-06-25 10:50:48 · 314 阅读 · 0 评论 -
数据结构 队列的概念及基本操作
---------------start reading--------------前言队列是遵循先进先出的一种特殊的结构,就像排队打饭,先去的就能先打到饭,也像一个没有底的桶先倒进去的先出来。所以队列需要一个头和一个尾来控制队列。顺序队,用顺序结构存储队列,分配指定的长度存储数据,会存在队头队尾序号移动的问题,对头下标初始值为0,经过插入删除之后会使头指针的下标改变成1(0、1、2、3都...原创 2019-06-27 18:24:22 · 1608 阅读 · 0 评论