数据结构第一轮
文章平均质量分 74
hua_ju
奋斗中的菜鸟
展开
-
数据结构学习之路1 顺序存储的线性表
#includeusing namespace std;#define MAXSIZE 100//顺序表typedef struct Lnode{int data[MAXSIZE];int last;}Lnode;Lnode *empty(){Lnode *p;p = (Lnode *)malloc(sizeof(Lnode));p -> last = -1;return p;}void inse原创 2017-07-27 09:52:04 · 308 阅读 · 0 评论 -
数据结构学习之路5 队列的应用——多项式相加
此次代码不支持键盘输入两个待加的多项式,需要在程序内部设定两个多项式,然后计算他们的和,用到的数据结构是链表形式的队列代码如下#includeusing namespace std;typedef struct Qnode *Queue;struct Qnode{ int xishu; int zhishu; Queue next;};int Compare(int a, in原创 2017-07-30 16:08:14 · 576 阅读 · 0 评论 -
数据结构学习之路6 用链表实现堆栈
这次代码一波两折,本来想着堆栈这种结构只有一端进行操作,这样我只记录rear的位置就好了,就不用像链表实现的队列内样定义两个结构体,然后我就一路写,push函数直接使p指向队尾就好,结果写到pop的时候就傻眼了,我找不到上一个节点!我的指针指向着最后一个节点,那我怎么出栈呢?想了好久,一度想要写出双链表,看了别人的思路之后才发现可以倒着写,大家如果不懂我为什么说是倒着写,可以画一画这个程序的逻辑,原创 2017-07-31 00:28:42 · 543 阅读 · 0 评论 -
数据结构学习之路3 堆栈的基本操作
做了些无用功,写了栈的遍历和查找,这个应该是多此一举了……主函数写了简单的程序测试,测试没问题#include#includeusing namespace std;#define MAXSIZE 100struct Stack{ int data[MAXSIZE]; int top;};typedef Stack *stack;stack creat(){ stack p;原创 2017-07-29 00:23:02 · 431 阅读 · 0 评论 -
数据结构学习之路2 链表存储的线性表
#includeusing namespace std;struct List{ int data; List *next;};typedef List *list;list creat(){ list p; p = (list )malloc(sizeof(List)); p ->next = NULL; return p;}void insert(int x, int原创 2017-07-29 00:20:48 · 180 阅读 · 0 评论 -
数据结构学习之路4 队列的基本操作(顺序存储的循环队列+链表实现)
队列先进先出,这里用了顺序(数组)和链式两种方式实现,下次再用链式存储实现以下堆栈试试循环队列://顺序存储结构的循环队列#includeusing namespace std;#define MAXSIZE 100typedef struct Qnode *Queue;struct Qnode{ int data[MAXSIZE]; int front; int rear;原创 2017-07-29 00:26:56 · 568 阅读 · 0 评论