![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 82
yesinol
这个作者很懒,什么都没留下…
展开
-
二叉树(纪念版)
硬化代码很多,目前只能实现字符型数据。typedef char ElementType;typedef struct node{ ElementType data; struct node *lchild; struct node *rchild;}TreeNode;TreeNode *CreateTree(ElementType **); /*创原创 2010-01-25 14:52:00 · 255 阅读 · 0 评论 -
链表(纪念版)alpha
本链表的实现有问题,暂时留作纪念。typedef char ElementType;typedef struct node{ ElementType data; struct node *next;}ChainNode;typedef struct list{ ChainNode *head;}LinerList;ChainNo原创 2010-01-25 14:54:00 · 267 阅读 · 0 评论 -
线性表(纪念版)
这是用数组实现的线性表,作为头文件使用。现在看起来有些粗糙,功能上倒还过得去。最后的遍历函数可以满足不同的数据类型,只需要在主程序中写一个显示函数,比如void show(ElementType *data){}。如需改动只要修改显示函数,不必改动头文件里的遍历函数。另外,判空和判满还可以用另外的函数实现,这样不仅可以使程序更清晰,而且修改比较方便,利于扩充和增强重用性。/*list.h*原创 2010-01-25 14:44:00 · 265 阅读 · 0 评论 -
栈(纪念版)
这个程序吸取了前一个线性表的经验,增加了判空和判满两个函数,思路更加清晰了,然而“硬化代码”的情形仍然存在。其实有些缺点是因为用数组实现的缘故,如果换成指针会减少现在出现的问题,同时也会出现新的问题。同样的逻辑结构可以用不同的物理结构实现,它们各有优缺点,适用于不同的环境。/*stack.h*/typedef char ElementType;typedef struct{原创 2010-01-25 14:49:00 · 282 阅读 · 0 评论 -
队列(纪念版)
这是一个循环队列,用数组实现。比栈的改进之处在用函数memcpy()代替了用等号直接赋值,这样的好处是程序的通用性更强了,不仅可以用于基本数据类型,换成结构体也不必做任何改动。/*queue.h*/typedef char ElementType;typedef struct{ ElementType *buffer; int head; int ta原创 2010-01-25 14:51:00 · 275 阅读 · 0 评论