数据结构
文章平均质量分 64
seadplus
这个作者很懒,什么都没留下…
展开
-
顺序栈的基本操作实现
#include #include using namespace std; #define StackSize 100 //顺序栈的初始分配空间 typedef struct { char data[StackSize]; //保存栈中元素 int top; //栈指针 }SqStack; void InitStack(SqStack *st)原创 2012-03-23 10:37:53 · 933 阅读 · 0 评论 -
详细的单链表基本操作C/C++实现
#include #include #include #include using namespace std; typedef struct snode { int data; struct snode *next; }lnode; int listinsert(lnode *l,int i,int e) //结点插入指定位置 { lnode *p=l; int原创 2012-04-10 20:14:26 · 770 阅读 · 0 评论 -
链表经典问题——猴子选大王
n只猴子要选大王,选举方法如下:所有猴子按 1,2 ……… n 编号并按照顺序围成一圈,从第 1个猴子起,由1开始报数,报到m时,该猴子就跳出圈外,下一只猴子再次由1开始报数,如此循环,直到圈内剩下一只猴子时,这只猴子就是大王。 #include #include using namespace std; typedef struct snode { int data; struct原创 2012-04-11 13:56:05 · 3953 阅读 · 0 评论 -
队列基本操作的实现
#include #include using namespace std; typedef struct qnode { int data; struct qnode *next; }qtype; typedef struct qptr { qtype *front,*rear; }squeue; squeue lq; int empty(squeue *lq) //判断队列是否原创 2012-04-11 20:40:46 · 582 阅读 · 0 评论 -
线索二叉树
线索二叉树概念 1.定义 n个结点的二叉链表中含有n+1个空指针域。利用二叉链表中的空指针域,存放指向结点在某种遍历次序下的前趋和后继结点的指针(这种附加的指针称为"线索")。 这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同,线索二叉树可分为前序线索二叉树、中序线索二叉树和后序线索二叉树原创 2012-05-02 16:34:46 · 1068 阅读 · 0 评论 -
二叉树的创建与遍历
用二叉链表存储二叉树,利用二叉树先序遍历结果递归的方法创建二叉树,对二叉树进行先序遍历,中序遍历,后序遍历。 序列:1 2 0 4 0 0 3 5 0 0 0 #include #include #define TRUE 1 #define FALSE 0 #define ok 1 #define maxsize 100 using namespace std; //typedef in原创 2012-05-07 21:08:45 · 627 阅读 · 0 评论 -
二叉树的非递归遍历
建立二叉链表存储结构,创建二叉树。利用栈实现非递归中序遍历。 输入序列为:1 2 0 4 0 0 3 5 0 0 0 #include #include #include #define TRUE 1 #define FALSE 0 #define ok 1 #define maxsize 100 using namespace std; typedef struct binode { i原创 2012-05-08 00:14:11 · 500 阅读 · 0 评论 -
二叉树遍历的应用
建立二叉链表存储结构,创建二叉树,求二叉树的叶子节点数,求二叉树的高度,翻转二叉树。 输入序列:1 2 0 4 0 0 3 5 0 0 0#include #include #include #define TRUE 1 #define FALSE 0 #define ok 1 #define maxsize 100 using namespace std; typedef struct bin原创 2012-05-08 22:12:13 · 621 阅读 · 0 评论