
数据结构
醉等佳人归
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
图论
文章目录1.图的定义和术语1.图的定义和术语顶点:在图中的数据元素通常称为顶点。V是顶点的有穷非空集合。有向图(A):VR是两个顶点之间的关系的集合。若<v,w>∈VR,则<v,w>表示从v到w的一条弧,且称v为弧尾巴,w为弧头,此时的图称为有向图。无向图(V):若<v,w>∈VR必有<w,v>∈VR,即VR是对称的,,则以无序对**(v,...原创 2020-03-12 10:36:27 · 518 阅读 · 0 评论 -
树和二叉树
文章目录1.树的定义和基本术语2.二叉树1.树的定义和基本术语数是个结点的有限集。在任意一棵非空树中有且仅有一个特定的称为根的结点当n>1时,其余结点可分为m(m>0)个互不相交的有限继T1,T2,…,Tm,其中每一个集合本身又是一棵树,并且称为根的子树。结点的度:结点拥有的子树数称为结点的度,度为0的结点称为叶子或终端结点数的度:各结点的度的最大值数的深度或高度...原创 2020-03-09 22:10:53 · 264 阅读 · 0 评论 -
数组和广义表
文章目录1.矩阵的压缩存储(1)特殊矩阵的压缩存储(2)稀疏矩阵的压缩存储① 三元组顺序表压缩① 行逻辑链接的顺序表数组和广义表可以看成是线性表在下述含义上的扩展:表中的数据元素本身也是一个数据结构1.矩阵的压缩存储假若值相同的元素或者零元素在矩阵中的分布有一定规律,则我们称此类矩阵为特殊矩阵;反之,称为稀疏矩阵。(1)特殊矩阵的压缩存储若n节矩阵A中的元满足下述性质:aij...原创 2020-03-08 16:41:55 · 530 阅读 · 0 评论 -
字符串
文章目录1.串类型的定义2.串的表示和实现(1)定长顺序存储表示(2)堆分配存储表示(3)串的块链存储表示3.串的模式匹配算法(1)普通算法(2)KMP匹配算法1.串类型的定义串是由零个或多个字符组成的有限序列串中任意个连续的字符组成的子序列称为该串的子串。包含子串的串相应地称为主串。子串在主串中的位置则以子串的第一个字符在主串中的位置来表示串赋值、串比较、求串长和求子串、串连接以及求子...原创 2020-03-07 22:37:40 · 206 阅读 · 0 评论 -
栈
文章目录1.栈的定义2.栈的表示和实现3.栈的应用(1)数制转换(2)括号匹配的检验(4)迷宫求解1.栈的定义栈:限定仅在表尾进行插入或删除操作的线性表。表尾端称为栈顶,表头端称为栈底。称为后进先出的线性表(LIFO)2.栈的表示和实现顺序栈的实现:#define STACK_INIT_SIZE 100#define STACK_INCREMENT 10typedef str...原创 2020-03-07 12:11:24 · 141 阅读 · 0 评论 -
队列
文章目录1.队列的定义2.队列的实现:链队列3.循环队列——队列的顺序表示和实现1.队列的定义队列是一种先进先出的线性表。一端允许插入一端允许删除,允许插入的那端称为队尾,允许删除的那端称为对头2.队列的实现:链队列队列的定义typedef int ElemType;typedef struct QNode{ ElemType data; QNode* next;}...原创 2020-03-06 22:55:13 · 282 阅读 · 0 评论 -
线性表练习4——一元稀疏多项式计算器
问题描述解题思路用带表头节点的单链表存储多项式,多项式的项数存放在头结点代码实现结构体和单链表定义typedef struct{ int exp; //指数 double res; //系数}Polynomial;typedef struct Node{ int exp; //指数 double res; //系数 struct Node* ...原创 2020-03-06 17:14:12 · 1043 阅读 · 1 评论 -
线性表练习3——长整数四则运算
问题描述解题思路每个节点中可以存放的最大整数为215-1,才能保证两数相加不会溢出,但若这样存放,即相当于按32768进制数存放,在书进制数与32768进制数之间的转换十分不方便,故可以在每个节点中仅存十进制数的4位,即不超过9999的非负整数可以利用头结点数据域的符号代表长整数的符号。用其绝对值表示元素结点数目。相加过程中不要破坏两个操作数链表。两个操作数的头指针存于指针数组中是简化程...原创 2020-03-06 15:59:03 · 1505 阅读 · 0 评论 -
线性表练习2——集合的并交差
问题描述解题思路涉及链表的遍历,查询,插入代码实现原创 2020-03-06 09:49:37 · 566 阅读 · 0 评论 -
线性表练习1——约瑟夫环
问题描述解题思路涉及循环链表的创建,删除代码#include <iostream>using namespace std;typedef int ElemType;typedef struct CNode{ struct CNode* next; ElemType id; ElemType psd;}CNode,*CLinkList;bool Crea...原创 2020-03-05 20:40:25 · 232 阅读 · 0 评论 -
链表
文章目录1.单链表2.静态链表3.循环链表4.双向链表5.优缺点1.单链表线性表的链式存储结构的特点是用一组任意的存储单元存储线性表的数据元素有时,我们在单链表的第一个节点之前附设一个结点,称为头结点。它的数据部分是空的或者存储链表的长度,指针指向第一个节点的指针单链表的定义typedef int ElemType;typedef struct{ ElemType data...原创 2020-03-05 18:59:01 · 165 阅读 · 0 评论 -
顺序线性表
文章目录1.线性表的类型定义2.线性表的顺序表示和实现1.线性表的类型定义线性表是n个数据元素的有限序列在稍微复杂的线性表中,一个数据元素可以由若干个数据项组成,在这种情况下,常把数据元素称为记录,含有大量记录的线性表又称文件。若将线性表记为:(a1,…,ai-1,ai,ai+1…an)其中ai-1是ai的直接前驱元素,ai+1是ai的直接后继元素2.线性表的顺序表示和实现...原创 2020-03-05 16:43:04 · 151 阅读 · 0 评论 -
绪论
文章目录1.基本概念和术语2.算法和算法分析1.基本概念和术语数据:对客观事物的符号表示,在计算机科学中是指所有能输入到计算机并被计算机程序处理的符号的总称数据元素:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。数据对象:性质相同的数据元素的集合,是数据的一个子集数据结构:相互之间存在一种或多种特定关系的数据元素的集合存储结构:数据结构在计算机中的表示,包括数据元素的...原创 2020-03-05 11:56:52 · 155 阅读 · 0 评论