数据结构
文章平均质量分 76
基皮producer
这个作者很懒,什么都没留下…
展开
-
基础数据结构--栈实现
栈的内容也比较基础,而且有很多博客讲解得很明白,因此此处不再赘述。 代码已经经过检测 #include #include #define STACKSIZE 100 //定义元素类型 typedef int elemType; //定义栈结构 typedef struct stack { elemType *base; elemType *top; int size; }stack原创 2015-09-28 20:34:45 · 275 阅读 · 0 评论 -
基础数据结构--队列链表实现
代码已经过测试 #include #include //元素类型定义 typedef int elemType; //队列链表节点 typedef struct qNode { elemType data; struct qNode *next; }qNode; //队列链表 typedef struct qList { qNode *front; qNode *rear; }原创 2015-09-28 21:30:32 · 204 阅读 · 0 评论 -
基础数据结构--线性表链式实现
以下代码为线性表的链式实现,在VS2012下测试通过。代码比较简单,所以注释只是标明了函数功能,如果有错误之处还请不吝赐教。 #include #include //链表元素结构体 typedef struct listEle { int data; struct listEle *next; }listEle; //链表结构体 typedef struct list { list原创 2015-09-19 17:18:00 · 347 阅读 · 0 评论 -
基础数据结构--线性表实现
以下代码是对基础数据结构中的线性表的顺序实现,在VS2012下没问题 #include #define MAXLENGTH 20 struct list { int data[MAXLENGTH]; int length; }; //增加元素 int insert(list& l, int e, int index) { if(index = MAXLENGTH || index >原创 2015-09-19 17:08:22 · 294 阅读 · 0 评论 -
基础数据结构--双向链表的实现
以下代码为双向链表的实现,由于双向链表与单向链表差距不大,因此实现时只实现了增加元素和删除元素的操作。 总结一下与单向链表的区别: 主要是在写代码时要考虑一个链表元素的next指针和pre指针两个方向,包括在进行测试时都要把链表正向,逆向都跑一遍才能确定代码正确性。 链表的操作最复杂之处是在链表头与表尾的讨论。 以下代码已经过VS2012 测试 #include #include原创 2015-09-23 22:36:38 · 253 阅读 · 0 评论