本文中的双向链表,具有一个首指针h,但没有尾指针,不是循环链表。链表反转时,要做两件事情,一是将数据部分的pre指针和next指针交换值;二是将h指针指向反转后的头数据节点指针,并将新链表的尾数据节点指针的next(即原链表头数据指针的next)置空。 上代码: DLinkedNode.h #ifn...
分类:
其他好文 时间:
2015-10-10 00:20:38
阅读次数:
219
约瑟夫环问题(C语言、数据结构版)一、问题描述N个人围城一桌(首位相连),约定从1报数,报到数为k的人出局,然后下一位又从1开始报,以此类推。最后留下的人获胜。(有很多类似问题,如猴子选代王等等,解法都一样)二、思路分析 (1)可将人的顺序简单编号,从1到N; (2)构造一个循环链表,可...
分类:
编程语言 时间:
2015-10-07 01:06:29
阅读次数:
234
DuLink:#includeusing namespace std;typedef int elemType;typedef struct DulNode{ elemType data; DulNode *prior; DulNode *next;}*DuList;void In...
分类:
编程语言 时间:
2015-10-06 19:31:12
阅读次数:
196
#include #include #include struct list_head { struct list_head *next, *prev;};#define list_entry(ptr, type, member) \ (type *)( (char *)p...
分类:
编程语言 时间:
2015-09-30 14:19:39
阅读次数:
173
用循环链来表示队列,并且只有一个指针。我的想法就是在每个节点添加一个布尔型数据,可以用布尔型数据的true和false来判断此节点是否有数据。这样生成队列的时候和书上类似。插入数据的时候,先保存原指针指向的点,然后将此指针向下寻找,直到找到一个节点的布尔是false,而下一个是true时,表示此节点...
分类:
其他好文 时间:
2015-09-23 23:25:49
阅读次数:
203
一:知识点 数据结构: 1,单,双链表及循环链表 2,树的表示与存储,二叉树(概念,遍历)二叉树的 应用(二叉排序树,判定树,博弈树,解答树等) 3,文件操作(从文本文件中读入数据并输出到文本文 件中) 4,图(基本概念,存储结构,图的运算) 数学知识 ...
分类:
其他好文 时间:
2015-09-21 11:48:45
阅读次数:
286
要求实现用户输入一个数改变26个字母的排列顺序例如输入3:DEFGHIJKLMNOPQRSTUVWXYZABC输入-3:XYZABCDEFGHIJKLMNOPQRSTUVW使用循环链表代码如下: 1 #include 2 #include 3 4 #define OK 1 5 #define ER....
分类:
其他好文 时间:
2015-09-17 21:32:33
阅读次数:
194
利用循环链表模拟约瑟夫问题,把自杀的人的顺序排列出来代码如下: 1 #include 2 #include 3 4 typedef int status; 5 6 typedef struct node 7 { 8 status data; 9 struct node *next...
分类:
其他好文 时间:
2015-09-17 21:25:53
阅读次数:
134
循环链表的定义:将单链表中最后一个数据元素的next指针指向第一个元素在循环链表中可以定义一个“当前”指针,这个指针通常称为游标,可以通过这个游标来遍历链表中的所有元素。
分类:
其他好文 时间:
2015-09-13 07:01:46
阅读次数:
254
本文针对数据结构基础系列网络课程(2):线性表的实践项目。【项目 - 猴子选大王】
一群猴子,编号是1,2,3 …m,这群猴子(m个)按照1-m的顺序围坐一圈。从第1只开始数,每数到第n个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。输入m和n,输出为大王的猴子是几号。
提示:
(1)链表解法:可以用一个循环单链表来表示这一群猴子。表示结点的结构体...
分类:
其他好文 时间:
2015-09-12 20:23:51
阅读次数:
200