admin 2019年06月17日 最小生成树算法 两个最小生成树算法前者适合稠密,后者适合稀疏,都是基于邻接矩阵的算法Prim算法#define INF 32767 void Prim(MGraph g,int v) { int lowcost[MAXV]; int min 603 0 0 数据结构
admin 2019年06月17日 循环队列的算法 循环队列模型是:front没有元素,rear有元素。P153循环队列的存储结构#define MaxSize 100 typedef int ElemType; struct SqQueue { ElemType data[MaxS 603 0 0 数据结构
admin 2019年06月17日 选择排序 堆排序的数组元素序号是从1开始的,因为堆实际上是一棵顺序存储(数组存储)的二叉排序树简单选择排序void SelectSort(SqList R[],int n) { int i,j,k; SqList tmp; f 646 0 0 数据结构
admin 2019年06月17日 线性表的折半查找 线性表的存储结构#define MAXL 10 typedef int KeyType; typedef int InfoType; struct RecType { KeyType key; InfoType data; 579 0 0 数据结构
admin 2019年06月17日 拓扑排序的算法 原有邻接表存储结构加入入度数据项#define MAXV 4 typedef int ElemType; typedef int InfoType; struct ArcNode { int adjvex; struct A 608 0 0 数据结构
admin 2019年06月17日 图的基本算法 MGraph是Matrix Graph邻接矩阵; AGraph是Adjacent Graph邻接表两种存储结构都是由邻接矩阵初始化的边表的初始化是用头插法,理解头插法的最佳想象是在有很多结点的情况下继续插,用从零开始的想法去做有点困 难 576 0 0 数据结构
admin 2019年06月17日 图的遍历算法 深度优先遍历int visited[MAXV]= {0}; void DFS(AGraph *G,int v) { ArcNode *p; visited[v]=1; cout<<v<<&qu 620 0 0 数据结构
admin 2019年06月17日 顺序栈的算法 顺序栈的存储结构#define MaxSize 100 typedef int ElemType; struct SqStack { ElemType data[MaxSize]; int top; };初始化栈的算法voi 607 0 0 数据结构
admin 2019年06月17日 顺序表的算法 typedef int ElemType 表示为int起别叫ElemType.typedef int Elemtype[10]相当于:以后用Elemtype声明的变量都是一个int[10]数组.除了return,还可以通过引用形参来返回函数 602 0 0 数据结构
admin 2019年06月17日 双链表的算法 双链表的存储结构typedef int ElemType; struct DLinkList { ElemType data; struct DLinkList *prior; struct DLinkList *n 579 0 0 数据结构
admin 2019年06月17日 树表的查找 BST:Binary Sort Tree,二叉排序树p=malloc(...)强制类型转换→p=(BSTNode *)malloc(...)二叉排序树的存储结构typedef int KeyType; typedef int InfoTyp 616 0 0 数据结构
admin 2019年06月17日 模式匹配算法 前缀常识:Sq→Sequence,指顺序结构, Li→Link,指链接结构malloc的用法:struct SqString p=(SqString )malloc(sizeof(SqString));顺序串的存储结构#define Max 586 0 0 数据结构
admin 2019年06月17日 链栈的算法 p=lst->next这句话的含义是p为指向头结点之后第一个节点的指针。==NULL译为:没有第一个节点。链栈的存储结构typedef int ElemType; struct LiStack { ElemType data; 563 0 0 数据结构
admin 2019年06月17日 链队的算法 链队是一个没有头结点的单链表, 它的front和rear都有具体元素。队空不是front==rear, 而是 rear==NULL,front==rear可能是只有一个元素。存储结构就是在单链表的基础上加上一个结构体 LiQueue,内 640 0 0 数据结构
admin 2019年06月17日 交换排序 注意:快速排序的第二次扫描R[i].key <= tmp.key,而不是R[i].key < tmp.key,不然可能陷入i!=j永远不成立的循环冒泡排序void BubbleSort(SqList R[],int n) { 611 0 0 数据结构
admin 2019年06月17日 归并排序 Merge 将两个序列归并, MergePass 定义了在每一个长度下对序列怎样分区归并, MergeSort 以递增长度调用 MergePass归并排序算法void Merge(SqList R[],int low,int mid,int 635 0 0 数据结构
admin 2019年06月17日 二叉树的基本算法 二叉树的存储结构#define MaxSize 100 typedef char ElemType; struct BTNode { ElemType data; struct BTNode *lchild; str 589 0 0 数据结构
admin 2019年06月17日 二叉树的遍历算法 while(队列非空){出队;入队}二叉树的存储结构#define MaxSize 100 typedef char ElemType; struct BTNode { ElemType data; struct BTNod 568 0 0 数据结构
admin 2019年06月17日 单链表的算法 单链表的存储结构typedef int ElemType; struct LinkList { ElemType data; struct LinkList *next; };采用头插法建立单链表void CreateLis 568 0 0 数据结构
admin 2019年06月17日 插入排序 顺序表的存储结构#define MAXITEM 100 typedef int KeyType; typedef char ElemType[10]; struct SqList { KeyType key; ElemTyp 612 0 0 数据结构