数据结构与算法
文章平均质量分 77
刘春辉
前后端打杂
展开
-
线性表的添加、删除、插入功能的顺序实现
线性表的顺序存储结构就是利用数组,动态数组更方便些,以下用的动态数组#include #include #define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量#define LISTINCREMENT 10//线性表存储空间的分配增量#define ElemType int#define OK 1#define ERROR 0typedef st原创 2013-12-10 22:07:47 · 2777 阅读 · 0 评论 -
队列链式存储
队列是先进先出的线性表,在队尾插入元素,在队头删除元素以下代码实现了构造空队列、销毁队列、队尾插入元素、对头删除元素功能#include #include #define QElemType int#define OK 1#define ERROR 0/********队列的链式存储结构********///设置链表结点typedef struct QNode{原创 2013-12-12 16:14:48 · 1197 阅读 · 0 评论 -
栈
栈:在表尾进行插入和删除操作的线性表。栈又称后进先出LIFO的线性表。#include #include #define SElemType int#define ERROR 0#define OK 1#define STACK_INIT_SIZE 100 //存储空间初始分配增量#define STACKINCREMENT 10 //存储空间分配增量/******栈的顺原创 2013-12-12 14:48:05 · 925 阅读 · 0 评论 -
顺序表的添加、删除、查找功能的链式实现
线性表的链式存储实际上就是链表#include #include #define ElemType int#define OK 1#define ERROR 0/*********线性表的单链表存储结构*********/typedef struct LNode{ ElemType data; //数据域 struct LNode *next; //指针域原创 2013-12-11 19:08:52 · 1731 阅读 · 0 评论 -
数据结构----树
此文章摘自维基百科:http://zh.wikipedia.org/wiki/%E6%A0%91_(%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84)#.E6.A0.91.E7.9A.84.E7.A7.8D.E7.B1.BB树状图是一种数据结构,它是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,转载 2013-12-12 21:19:15 · 980 阅读 · 0 评论 -
临接矩阵的存储和输出
#include #include #define VERTEX_MAX 30#define MAXSIZE 20typedef struct{ int arcs[VERTEX_MAX][VERTEX_MAX]; //定义临接矩阵的长宽 int vexnum,arcnum; //vexnum顶点数,arcnum边数} MGraph;/************ 初原创 2014-01-03 11:08:17 · 1148 阅读 · 0 评论 -
树--递归实现先、中、后遍历,层序遍历和树的深度
#include #include #define TElemType char#define ERROR 0#define OK 1/*********二叉树的链表存储表示**********/typedef struct BiTNode{ TElemType data; struct BiTNode *lchild,*rchild; //左右孩子指针}BiTN原创 2013-12-13 22:11:58 · 1156 阅读 · 0 评论 -
邻接表的建立和广度优先遍历
#include #include #define MAX_VEX 50typedef struct NODE{ int vertex; //顶点的索引 struct NODE *next; //下一个表结点}EdgeNode; //表结点typedef struct{ char vex; EdgeNode *first; //第一个表结点}Vertex; //表头结原创 2014-01-03 13:33:08 · 1112 阅读 · 0 评论