一.什么是链表 链表是由一系列节点构成,每个节点由一个值域和指针域构成,值域中存储着用户数据,指针域中存储这指向下一个节点的指针.根据结构的不同,链表可以分为单向链表、单向循环链表、双向链表、双向循环链表等。单向链表的结构如下图所示: head 节点永远指向第一个节点, tail节点永远指向最后一个 ...
分类:
编程语言 时间:
2018-03-25 10:39:12
阅读次数:
280
题目链接:http://bailian.openjudge.cn/practice/2746描述约瑟夫问题:有n只猴子,按顺时针方向围成一圈选大王(编号从1到n),从第1号开始报数,一直数到m,数到m的猴子退出圈外,剩下的猴子再接着从1开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王,编 ...
分类:
其他好文 时间:
2018-03-03 14:00:26
阅读次数:
142
一、RTOS里面的重要数据结构 链表 很多RTOS包括Linux的内核在内,内核里面都大量使用了链表这一种数据结构。内核的链表一般都是双向循环链表,这是因为双向循环链表的效率是最高的,找头节点、尾节点,直接前驱、直接后继时间复杂度都是O(1),这是使用单链表、单向循环链表或其他形式的链表是不能完成的 ...
分类:
其他好文 时间:
2017-11-06 19:05:13
阅读次数:
209
单向循环链表 双向循环链表 仿真链表 一、单向循环链表: 1、概念: 单向循环链表是单链表的另一种形式,其结构特点是链表中最后一个结点的指针不再是结束标记,而是指向整个链表的第一个结点,从而使单链表形成一个环。 和单链表相比,循环单链表的长处是从链尾到链头比较方便。当要处理的数据元素序列具有环型结构 ...
分类:
编程语言 时间:
2017-09-16 20:39:14
阅读次数:
218
已知有一个单向循环链表,其每个结点中含三个域:prior,data 和 next,其中 data 域为数据域,next 为指向后继结点的指针域,prior 也为指针域,但它的值为空 (NULL) ,试编写算法将此单向循环链表改为双向循环链表,即使 prior 成为指向前驱结点的指针域。 输入格式 输 ...
分类:
其他好文 时间:
2017-09-10 13:36:02
阅读次数:
183
操作 is_empty() 判断链表是否为空 length() 返回链表的长度 travel() 遍历 add(item) 在头部添加一个节点 append(item) 在尾部添加一个节点 insert(pos, item) 在指定位置pos添加节点 remove(item) 删除一个节点 sear ...
分类:
编程语言 时间:
2017-07-20 10:06:00
阅读次数:
207
一,循环链表的概念 1.什么是循环链表 所谓的循环链表就是让单向链表的首尾相连,组成一个环状。 2.循环链表的典型应用 约瑟夫环问题。 3.实现循环链表的重点 1,循环链表在插入第一个元素的时候,需要我们将第一元素的指针域指向其自身,也就构成了循环链表。 2,循环链表基于单向链表而生,单是比循环链表 ...
分类:
其他好文 时间:
2017-01-07 08:15:18
阅读次数:
227
数据结构 一、集合 二、线性结构(重点) 元素与元素之间存在一对一的关系 存储方式: 顺序存储(顺序表) 链式存储(链表:单链表、单向循环链表、双链表、双向循环链表、内核链表) 特殊的线性结构 栈 只允许在表的同一端进行插入删除,插入称为入栈,删除称为 出栈(弹栈),允许操作的一端称栈顶,另一端称栈 ...
分类:
其他好文 时间:
2016-09-10 19:16:41
阅读次数:
107
【本文谢绝转载】《大纲》
数据结构:
起源:
基本概念
数据结构指数据对象中数据元素之间的关系
逻辑结构
物理结构
数据的运算
算法概念:
概念
算法和数据结构区别
算法特性
算法效率的度量
大O表示法
时间复杂度案例
空间复杂度
时间换空间案例
1)线性表..
分类:
编程语言 时间:
2016-07-23 07:40:02
阅读次数:
588