重写数据结构
寻隐者不遇2016
这个作者很懒,什么都没留下…
展开
-
顺序表的操作
表结构 简单起见,我们创建一个大小为 100 ,数组存储的顺序表来做演示 表结构 #define SEQUENCE_SIZE 100 typedef struct { int length; int data[SEQUENCE_SIZE]; }sqlist, *psqlist; 初始化 void init(psqlist p) { p->length = 0; for (...原创 2019-08-31 22:42:01 · 187 阅读 · 0 评论 -
单链表的操作
创建单链表 typedef struct Node { int elem; struct Node * next; }linklist, *plinklist; 生成单链表 函数声明 plinklist linklist_create(int size); 函数实现 plinklist linklist_create(int size) { plinklist node, hea...原创 2019-08-31 22:43:14 · 191 阅读 · 0 评论 -
循环单链表的操作
创建循环单链表 // 循环链表 // 最后一个结点的指针指向头结点 // // 有时候可以设置尾指针,更方便表的连接操作 typedef struct Node { int elem; struct Node * next; }clinklist, *pclinklist; 生成循环单链表 函数声明 pclinklist clinklist_create(int size); 函数...原创 2019-09-01 09:00:37 · 446 阅读 · 0 评论 -
重写约瑟夫回环(循环单链表)
问题描述 设有n个人围坐在圆桌周围,现从某个位置m(1≤m≤n)上的人开始报数,报数到k的人就站出来。下一个人,即原来的第k+1个位置上的人,又从1开始报数,再报数到k的人站出来。依此重复下去,直到全部的人都站出来为止。试设计一个程序求出出列序列。 思路 子问题1:查找第一个报数为 k 的? 子问题2:何时退出? #ifndef JOSEPH_CLINKLIST_H #defi...原创 2019-09-01 11:18:06 · 390 阅读 · 0 评论