数据结构
文章平均质量分 64
seadplus
这个作者很懒,什么都没留下…
展开
-
顺序栈的基本操作实现
#include#includeusing namespace std;#define StackSize 100 //顺序栈的初始分配空间typedef struct{ char data[StackSize]; //保存栈中元素 int top; //栈指针}SqStack;void InitStack(SqStack *st)原创 2012-03-23 10:37:53 · 925 阅读 · 0 评论 -
详细的单链表基本操作C/C++实现
#include#include#include#includeusing 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 · 759 阅读 · 0 评论 -
链表经典问题——猴子选大王
n只猴子要选大王,选举方法如下:所有猴子按 1,2 ……… n 编号并按照顺序围成一圈,从第 1个猴子起,由1开始报数,报到m时,该猴子就跳出圈外,下一只猴子再次由1开始报数,如此循环,直到圈内剩下一只猴子时,这只猴子就是大王。#include#includeusing namespace std;typedef struct snode{ int data; struct原创 2012-04-11 13:56:05 · 3938 阅读 · 0 评论 -
队列基本操作的实现
#include#includeusing 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 · 569 阅读 · 0 评论 -
线索二叉树
线索二叉树概念1.定义 n个结点的二叉链表中含有n+1个空指针域。利用二叉链表中的空指针域,存放指向结点在某种遍历次序下的前趋和后继结点的指针(这种附加的指针称为"线索")。 这种加上了线索的二叉链表称为线索链表,相应的二叉树称为线索二叉树(Threaded BinaryTree)。根据线索性质的不同,线索二叉树可分为前序线索二叉树、中序线索二叉树和后序线索二叉树原创 2012-05-02 16:34:46 · 1048 阅读 · 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 100using namespace std;//typedef in原创 2012-05-07 21:08:45 · 614 阅读 · 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 100using namespace std;typedef struct binode{ i原创 2012-05-08 00:14:11 · 482 阅读 · 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 100using namespace std;typedef struct bin原创 2012-05-08 22:12:13 · 602 阅读 · 0 评论