数据结构
eminent W
简简单单
展开
-
弗洛伊德算法(求每一对顶点间的最短路径)
每一对顶点间的最短路径求解每一对顶点间的最短路径有两种方法:其一是分别以图中的每个顶点为源点共调用n次迪杰斯特拉算法;其二是采用下面介绍的弗洛伊德算法。这两种算法的时间复杂度均为O(n^3),但后者形式上较简单。仍然使用带权的邻接矩阵arcs来表示有向网G,求从顶点vi到vj的最短路径。算法的实现要引入以下辅助的数据结构。(1)二维数组Path[i][j]:最短路径上顶点vj的前一顶点的序号...原创 2019-12-19 18:10:39 · 3350 阅读 · 0 评论 -
哈夫曼树及哈弗曼编码
哈姆曼树的构建:赫夫曼树的外结点和内结点的区别:外节点是携带了关键数据的结点, 而内部结点没有携带这种数据, 只作为导向最终的外结点所走的路径而使用,所以,我们主要关心的是赫夫曼树的外结点上, 而不是内结点。我们为扩充二叉树的外结点(叶子结点)定义两条属性: 权值(w)和路径长度(l)。同时规定带权路径长度(WPL)为扩充二叉树的外结点的权值和路径长度乘积之和:路径长度:路径长度指的是路径...原创 2019-12-17 09:32:30 · 738 阅读 · 0 评论 -
n个结点构成的二叉树种类个数
n个结点构成的二叉树种类个数公式:C(2*n,n)/(n+1)原创 2019-11-27 21:01:00 · 2471 阅读 · 0 评论 -
求数组指定元素的地址/求数组元素的下标
求数组指定元素的地址/求数组元素的下标一:数组元素的存储由于数组一般不做插入和删除操作,也就是说只要建立了数组,则结构中的数据元素的个数和元素之间的关系就不再发生变动。因此常采用顺序存储结构来表示数组。由于存储单元是一维的结构,而数组可能是多维的结构,则用一组连续存储单元存放数组的数据元素就有次序约定的问题。如图所示的(a)中的二维数组可以看作是如图所示的(b)所示的一维数组,也可以看做是如...原创 2019-11-22 14:33:15 · 6529 阅读 · 2 评论 -
数据结构(C语言)用链栈来实现计算器
数据结构顺序栈实现简单计算器的操作未改进,只能计算输出结果是个位数的数值计算#include<stdio.h>#include<string.h>#include<malloc.h>#include<stdlib.h>#include<iostream>#define OK 1#define ERROR 0#define...原创 2019-11-22 13:20:15 · 1780 阅读 · 2 评论 -
链队--队列的链式表示和实现
队列的链式表示和实现为了方便起见,给链队增加了一个头结点。————队列的链式存储结构————typedef struct QNode{ QElemType data; struct QNode *next; }QNode,*QueuePtr;typedef struct{ QueuePtr front; QueuePtr rear;}LinkQu...原创 2019-11-10 19:52:26 · 602 阅读 · 0 评论 -
队列的顺序存储结构的表示和实现
循环队列——队列的表示和实现---------队列的顺序存储结构---------#define MAXSIZE;typedef struct{ QElemType *base; //存储空间的基地址 int front; //头指针 int rear; //尾指针}SqQueue;初始化时令front=rear=0,每当删除一...原创 2019-11-10 18:47:07 · 713 阅读 · 0 评论 -
递归算法的效率分析(时间复杂度,空间复杂度)
递归算法的效率分析(时间复杂度,空间复杂度)原创 2019-11-10 17:16:02 · 2138 阅读 · 0 评论 -
链栈的表示和实现
链栈的表示和实现--------------链栈的存储结构--------------typedef struct StackNode{ SElemType data; struct StackNode *next; }StackNode,*LinkStack;①初始化Status InitStack(LinkStack &S){ S=NULL; ...原创 2019-11-10 12:17:03 · 272 阅读 · 0 评论 -
顺序栈的表示和实现
顺序栈的表示和实现----------顺序栈的存储结构----------#define MAXSIZE 100typedef struct{ SElemType *top; //栈顶指针 SElemType *base; //栈底指针 int stscksize; //栈可用的最大容量 }SqStack;top指针始终指...原创 2019-11-10 11:51:32 · 266 阅读 · 1 评论 -
单链表插入删除操作的时间复杂度
单链表相比数组的优势在于插入删除元素快,不需要移动大量的元素,只需要改变指针的指向,那么插入删除操作的时间复杂度应该是O(1),但是这是不对的,应该分情况讨论。单链表结构体声明:typedefstruct LNode{ ElemType data; struct LNode *next;}LNode,*LinkList;O(n)的情况:一个已知头结点的链表(假设足够...原创 2019-11-10 10:32:18 · 16854 阅读 · 0 评论 -
非递减排列和非递增排列的定义
1,2,3,4,5,… : 递增排列9,8,7,6,5… : 递减排列1,2,3,3,4,5,8,8,… : 非递减排列9,8,7,7,6,5,5,2,1,… : 非递增排列原创 2019-11-10 09:33:05 · 4639 阅读 · 1 评论 -
数据结构顺序表和链表的比较
顺序表和链表的比较原创 2019-11-09 20:24:49 · 468 阅读 · 0 评论 -
线性表的链式表示和实现
线性表的链式表示和实现单链表的定义和表示线性表链式存储结构的特点是:用一组任意的存储单元存储线性表中的数据元素(这组存储单元可以是连续的也可以是不连续的)。因此,为了表示没一个数据元素ai与其直接后继元素ai+1之间的逻辑关系。对数据元素ai来说,除了存储其本身的信息以外,还需要存储一个指示其后继的信息(即直接后继的存储位置)。这两部分信息组成数据元素ai的存储映像,称为结点(node)它包...原创 2019-11-09 20:17:05 · 525 阅读 · 0 评论 -
数据结构线性表顺序表实现
线性表的顺序存储表示(顺序表实现)----------顺序表的存储结构----------#demine MAXSIZE 100 //顺序表可能达到的最大长度typedef struct{ElemType *elem; //存储空间的基地址,此时的ElemType由用户根据需要自己定义,可以是int,char,float也可以是结构体,如一下类似于图书的存储结构int length...原创 2019-11-09 13:18:09 · 413 阅读 · 0 评论 -
顺序存取和随机存取的比较
顺序存取和随机存取顺序存取:就是存取第N个数据时,必须先访问前(N-1)个数据 (list)随机存取:就是存取第N个数据时,不需要访问前(N-1)个数据,直接就可以对第N个数据操作 (array)因而在数据结构的线性存储结构中:线性表的顺序存储结构是一种随机存取的存储结构线性表的链式存储结构是一种顺序存储的存储结构...原创 2019-11-09 10:55:11 · 2133 阅读 · 1 评论 -
用卡特兰数来求出栈序列个数
卡特兰数(Catalan数)定义:令h(0)=1,h(1)=1,Catalan数满足递归式:h(n) = h(0)*h(n-1) + h(1)*h(n-2) + … + h(n-1)*h(0) (n>=2)该递推关系的解为:h(n) = C(2n,n)/(n+1),n=0,1,2,3,… (其中C(2n,n)表示2n个物品中取n个的组合数)原理:令h(0)=1,h(1)=1,ca...原创 2019-11-08 12:01:54 · 3337 阅读 · 0 评论 -
计算循环队列元素个数
计算循环队列元素个数zz因为rear的值不一定比front的直大,所以说他俩的差值有可能得到的是负值,故采用这种取模的方式。二如果说rear在正常情况下大于front德华,那么rear与front的差值就是队列的长度图示解析:例题:...原创 2019-11-06 23:07:30 · 13064 阅读 · 2 评论 -
数据结构舞伴问题(链队)
链式队列实现舞伴问题#include<stdio.h>#define OK 1#define ERROR -1typedef int Status;typedef char SElemType;typedef char QElemType;//定义跳舞者 typedef struct{ char name[20]; char sex;}P...原创 2019-11-06 17:27:25 · 3099 阅读 · 0 评论 -
数据结构线性表实现学生信息管理系统
数据结构线性表实现学生信息管理系统方法一:顺序表实现#include <stdio.h>#include <iostream>#include <stdlib.h>#include <string.h>#define MAXSIZE 1000#define OVERFLOW -1using namespace std;type...原创 2019-10-22 18:55:05 · 24160 阅读 · 11 评论