![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 66
befernal
这个作者很懒,什么都没留下…
展开
-
数据结构之有向网邻接表实现拓扑与关键活动(参考整理严蔚敏数据结构)
#includeusing namespace std;#define MAX_VERTEX_NUM 20typedef char VType;typedef int AType;typedef int InfoType;typedef struct ArcNode{ AType adjvex; ArcNode *pNextArc; InfoType *pInfo;}ArcN原创 2014-11-07 10:51:04 · 541 阅读 · 0 评论 -
数据结构之树
//树中结点和它的兄弟结点地位相同(如果有)//对应于树的二叉链表来说,沿着结点的右指针(如果有)一直往右走,则当前结点和这些右指针所指向的结点之间都是兄弟#includeusing namespace std;#define QSIZE 20typedef char ElemType;typedef struct CSNode{ ElemType data; CSNode *p原创 2014-10-22 22:25:29 · 556 阅读 · 0 评论 -
数据结构之链栈(参考整理严蔚敏数据结构)
#includeusing namespace std;#define InitStack InitList #define DestroyStack DestroyList#define ClearStack ClearList#define StackEmpty ListEmpty#define StackLength ListLength#define GetTop GetFi原创 2014-11-02 10:57:36 · 537 阅读 · 0 评论 -
数据结构之无向图邻接表DFS之查询遍历关节点(参考整理严蔚敏数据结构)
#includeusing namespace std;#define MAXVEX 100typedef char VType;typedef struct ArcNode{ int adjvex; ArcNode *pNextArc;}ArcNode;typedef struct VexNode{ VType data; ArcNode原创 2014-10-27 14:49:20 · 1491 阅读 · 0 评论 -
图的邻接表BFS(参考C博客—研究毛)
#includeusing namespace std;#define QSIZE 20#define MAXVEX 30typedef char VType;typedef int EType;typedef struct ENode{ int Avex; struct ENode *pNext;}ENode, *pENode;typedef struct VNode{原创 2014-10-15 11:09:18 · 664 阅读 · 0 评论 -
数据结构之实用单链表(参考整理严蔚敏数据结构)
#includeusing namespace std;typedef int ElemType;typedef struct Node{ ElemType data; Node *pNext;}Node,*Link;typedef struct LinkList{ Link pHead; Link pTail; int Length;}LinkList;voi原创 2014-11-01 14:53:17 · 816 阅读 · 0 评论 -
数据结构之双向循环链表(参考整理严蔚敏数据结构)
#includeusing namespace std;typedef int ElemType;typedef struct DNode{ ElemType data; DNode *pPrior; DNode *pNext;}DNode;typedef DNode * DLink;void InitList(DLink &L){ L = new DNode; L-原创 2014-11-01 09:13:06 · 576 阅读 · 0 评论 -
数据结构之无向图的邻接表DFS(参考C博客—研究毛)
#includeusing namespace std;#define MAXVEX 100typedef char VType;typedef int EType;typedef struct ENode{ int Avex; EType Weigh; struct ENode *pNext;}ENode;typedef struct VNode{ VType data原创 2014-10-14 20:09:20 · 659 阅读 · 0 评论 -
数据结构之图的邻接矩阵存储(参考C博客—研究毛)
#includeusing namespace std;#define MAXVEX 100#define INFINITY 65535typedef int EdgeType;typedef char VertexType;typedef struct{ VertexType Vex[MAXVEX]; EdgeType Arc[MAXVEX][MAXVEX]; int Vnu原创 2014-10-14 20:05:08 · 732 阅读 · 0 评论 -
数据结构之设置尾指针的单向循环链表(参考整理严蔚敏数据结构)
#includeusing namespace std;typedef int ElemType;typedef struct Node{ ElemType data; Node *pNext;}Node;typedef Node *Link;//设立尾指针的单向循环链表void InitList(Link &L){//生成只有一个头结点的空表 L = new Node;原创 2014-11-01 12:10:30 · 1494 阅读 · 0 评论 -
数据结构之图的邻接矩阵DFS(参考C博客—研究毛)
#includeusing namespace std;#define MAXVEX 100#define INFINITY 65535typedef int EType;typedef char VType;typedef struct{ VType Vex[MAXVEX]; EType Arc[MAXVEX][MAXVEX]; int Vnums; int Enums;原创 2014-10-14 20:03:55 · 553 阅读 · 0 评论 -
数据结构之图的邻接表存储(参考C博客—研究毛)
#includeusing namespace std;#define MAXVEX 100typedef char VType;typedef int EType;typedef struct ENode//边表结点{ int Avex;//下标 EType Weigh;//权值 struct ENode *pNext;}ENode;typedef struct VNode原创 2014-10-14 20:00:41 · 452 阅读 · 0 评论 -
数据结构之顺序栈
#include#include#includeusing namespace std;#define STACKSIZE 7#define STACKSIZEADD 3#define ElemType inttypedef struct stack{ ElemType *pBottom; ElemType *pTop; int stacksize;}Stack;void原创 2014-09-23 14:54:16 · 444 阅读 · 0 评论 -
链栈
#includeusing namespace std;typedef int ElemType;typedef struct node{ ElemType data; struct node *pNext;}Node,*pNode;void InitStack(pNode pS)//链栈无头节点,pS始终指向栈顶元素{ pS = NULL; return;}bool S原创 2014-09-29 20:45:34 · 369 阅读 · 0 评论 -
数据结构之无向网(邻接矩阵)之基本操作(含Prim)
#includeusing namespace std;#define MAXVEX 100#define INFINITY 65535typedef char VNode;typedef int ANode;typedef struct MGraph{ VNode Vex[MAXVEX]; ANode Arc[MAXVEX][MAXVEX]; int Vnums; int原创 2014-10-19 19:30:00 · 1924 阅读 · 0 评论 -
数据结构之二叉树(附栈实现先序,中序非递归遍历)
#include#includeusing namespace std;#define STACKSIZE 20#define SIZEADD 10typedef char ElemType;typedef struct BTNode{ ElemType data; struct BTNode *pLchild; struct BTNode *pRchild;}BTNode,原创 2014-10-12 09:57:16 · 554 阅读 · 0 评论 -
数据结构之HashTable(除留余数法—链地址法)
#includeusing namespace std;#define MAXSIZE 17enum { No, Yes};typedef struct node{ //关键字结点 int data; //关键字 struct node *pNext; //指向下一个结点 }Node;typedef struct Table{ Node *table; /原创 2014-11-22 14:35:36 · 3072 阅读 · 0 评论 -
数据结构之广义表(头尾链表存储)基本操作
#includeusing namespace std;typedef char AtomType;typedef enum{ ATOM, LIST }ElemTag;typedef struct GLNode{ ElemTag tag; union { AtomType atom; struct { GLNode *pHead, *pTail; }tabl原创 2014-10-21 21:37:45 · 7117 阅读 · 0 评论 -
数据结构之共享栈(堆存储)
#includeusing namespace std; const int MAXSIZE = 20;typedef int SElemType;typedef struct HeDoubleStack{ SElemType *pBase; int top1; int top2;}HeDoubleStack;void Visit(SElemType c){ cout原创 2014-11-20 13:26:32 · 480 阅读 · 0 评论 -
数据结构之无向图邻接表DFS之查询遍历关节点
#includeusing namespace std;#define MAXVEX 100typedef char VType;typedef struct ArcNode{ int adjvex; ArcNode *pNextArc;}ArcNode;typedef struct VexNode{ VType data; ArcNode *pFirstArc;}Ve原创 2014-10-21 14:22:16 · 1181 阅读 · 0 评论 -
数据结构之无向图(邻接表)—参考严蔚敏数据结构
#includeusing namespace std;#define MAXVEX 100typedef char VType;typedef struct ArcNode{ int adjvex; ArcNode *pNextArc;}ArcNode;typedef struct VexNode{ VType data; ArcNode *pFirstArc;}Ve原创 2014-10-19 15:25:05 · 2798 阅读 · 0 评论 -
数据结构之图的邻接矩阵BFS(参考C博客—研究毛)
#includeusing namespace std;#define QSIZE 20#define MAXVEX 30typedef char VType;typedef int EType;typedef struct{ VType Vex[MAXVEX]; EType Arc[MAXVEX][MAXVEX]; int Vnums; int Enums;}MGraph原创 2014-10-15 11:11:46 · 731 阅读 · 0 评论 -
数据结构之无向图基本操作(采用邻接矩阵存储)—整理严蔚敏数据结构
//无向图的邻接表存储实现图的基本操作#includeusing namespace std;#define MAXVEX 100typedef char VexType;typedef struct ArcNode{ int adjvex; ArcNode *pNextArc;}ArcNode;typedef struct VexNode{ VexType data;原创 2014-10-18 19:41:46 · 6111 阅读 · 2 评论 -
数据结构之无向网邻接矩阵最短路径FLOYD算法—摘抄自《大话数据结构》
#includeusing namespace std;const int MAXEDGE = 20;const int MAXVEX = 20;const int INF = 65535;typedef int Status; /* Status 是函数的类型,其值是函数结果状态代码,如 OK 等 */typedef struct{ int vexs[MAXVEX]; int原创 2014-11-20 13:28:15 · 953 阅读 · 0 评论 -
数据结构之共享栈(顺序存储)—改编《大话数据结构》
#includeusing namespace std;const int MAXSIZE = 20;typedef int SElemType;/* 两栈共享空间结构 */typedef struct{ SElemType data[MAXSIZE]; int top1; /* 栈 1 栈顶指针 */ int top2; /* 栈 2 栈顶指针 */}SqDoubleSta原创 2014-11-20 13:24:11 · 425 阅读 · 0 评论 -
数据结构之线索二叉树(整理严蔚敏数据结构)
#includeusing namespace std;typedef char ElemType;typedef enum { Link, Thread }PointType;typedef struct BThrNode{ ElemType data; struct BThrNode *pLchild, *pRchild; PointType LTag, RTag;}BThr原创 2014-10-12 20:04:26 · 821 阅读 · 0 评论 -
数据结构之二叉树遍历与AllPathPrint(队列)
#includeusing namespace std;typedef char ElemType;typedef struct BTNode{ ElemType data; struct BTNode *pLchild; struct BTNode *pRchild;}BTNode, *pBTNode;void Visit(ElemType e){ cout << e;原创 2014-10-22 12:48:32 · 458 阅读 · 0 评论 -
数据结构之打印二叉树所有(根结点起)路径—整理严蔚敏数据结构
#include#includeusing namespace std;#define STACKSIZE 20#define SIZEADD 10typedef char ElemType;typedef struct BTNode{ ElemType data; struct BTNode *pLchild; struct BTNode *pRchild;}BTNode,原创 2014-10-13 13:53:30 · 584 阅读 · 0 评论 -
数据结构值行逻辑链接表实现矩阵运算(参考整理严蔚敏数据结构)
#include#includeusing namespace std;#define MAXSIZE 100#define MAXRC 20typedef int ElemType;typedef struct Triple{ int i; int j; ElemType e;}Triple;typedef struct RLSMatrix{ Triple data[原创 2014-10-29 20:03:07 · 981 阅读 · 0 评论 -
数据结构之顺序串(整理严蔚敏数据结构)
#include#includeusing namespace std;#define MAXSTRLEN 255typedef unsigned charSSTring[MAXSTRLEN+1];int StrLen(SSTring S){ int len = 0,i=0; while (S[i]) { len++; i++; } r原创 2014-09-23 14:37:38 · 715 阅读 · 0 评论 -
数据结构之顺序查找表
#include#include#includeusing namespace std;#define ElemType int#define TABLESIZE 10typedef struct{ ElemType *pBase; int length;}SSTable;void InitTable(SSTable &ST){ ST.pBase = (ElemType原创 2014-09-29 19:46:33 · 638 阅读 · 0 评论 -
数据结构之二叉排序树
#include#include#includeusing namespace std;#define ElemType inttypedef struct BTNode{ ElemType data; struct BTNode *pLchild; struct BTNode *pRchild;}BTNode, *pBTNode;pBTNode search(ElemTyp原创 2014-09-23 14:49:36 · 548 阅读 · 0 评论 -
数据结构之排序源代码
#include#includeusing namespace std;#define MAXSIZE 20typedef int ElemType;typedef struct{ ElemType Array[MAXSIZE + 1]; int length;}SqList;void InsertSort(SqList &L){ int i,原创 2014-09-22 20:40:49 · 793 阅读 · 0 评论 -
数据结构之归并排序(迭代实现)
#include#includeusing namespace std;#define MAXSIZE 20typedef int ElemType;typedef struct{ ElemType r[MAXSIZE + 1];//Array[0]置哨 int length;}SqList;void Merge(ElemType S[], ElemType T[], int原创 2014-11-09 12:10:06 · 592 阅读 · 0 评论 -
数据结构之选择排序之堆排序(参考严蔚敏数据结构)
#includeusing namespace std;#define MAXSIZE 20 // 一个用作示例的小顺序表的最大长度#define EQ(a,b) ((a)==(b))#define LT(a,b) ((a)<(b))#define LQ(a,b) ((a)<=(b))typedef int InfoType; // 定义其它数据项的类型typedef int Ke原创 2014-11-08 20:02:12 · 1110 阅读 · 0 评论 -
数据结构交换排序之起泡排序(参考严蔚敏数据结构)
//开始时是整个顺序表都是无序的,就算有序计算机也不知道//而后逐步扩大有序序列,减小无需序列//有序序列在表后,无序序列在表前,且有序序列中的key最小的元素的key都大于无序序列中的任意一个元素的key#includeusing namespace std;#define N 8void bubble_sort(int a[], int n){ // 将a中整数序列重新排列成自原创 2014-11-08 20:42:01 · 944 阅读 · 0 评论 -
数据结构之交换排序之快速排序(参考整理严蔚敏数据结构)
//Partition函数:将当前无序表的第一个元素放在最终排序后应该在的 //位置上并返回该位置,且该位置左边的元素值皆小于该位置元素的值, //反之亦然//Qsort函数:调用上面函数并利用上面函数返回的下标将表一分为二, //并递归处理这两个子表//QuickSort函数:显然是从第一个元素开始,最后一个元素结尾调用 //Qsort函数#includeusing n原创 2014-11-08 20:52:54 · 947 阅读 · 0 评论 -
数据结构之插入排序之希尔排序(缩小增量排序)—参考整理严蔚敏数据结构
#includeusing namespace std;#define MAXSIZE 20 // 一个用作示例的小顺序表的最大长度#define EQ(a,b) ((a)==(b))#define LT(a,b) ((a)<(b))#define LQ(a,b) ((a)<=(b))typedef int InfoType; // 定义其它数据项的类型typedef int Key原创 2014-11-08 21:01:27 · 719 阅读 · 0 评论 -
数据结构之有向网邻接矩阵Dijkstra实现源点至其余各顶点最短路径
#includeusing namespace std;#define MAXVEX 100#define INFINITY 65535typedef char VNode;typedef int ANode;typedef struct{ VNode Vex[MAXVEX]; ANode Arc[MAXVEX][MAXVEX]; int Vnums; int Anums;原创 2014-10-21 15:25:37 · 782 阅读 · 0 评论 -
数据结构之简单选择排序(参考整理严蔚敏数据结构)
#includeusing namespace std;#define MAXSIZE 20 // 一个用作示例的小顺序表的最大长度typedef int InfoType; // 定义其它数据项的类型typedef int KeyType; // 定义关键字类型为整型typedef struct RedType // 记录类型{ KeyType key; // 关键字项 Info原创 2014-11-08 20:27:09 · 1227 阅读 · 0 评论