
数据结构与算法
文章平均质量分 60
过客WZX
认认真真吃饭,老老实实减肥。
展开
-
循环链表的实现
循环链表的实现说明参考资料传智播客扫地僧的数据结构教学视频线性表基本知识参考该实现的说明C语言实现基于单向链表,参考实现算法和数据的分离实现circular_list.h#ifndef _CIRCULAR_LIST_H_#define _CIRCULAR_LIST_H_#ifdef __cplusplusextern "C"{#endiftypedef void CIRCULAR_LIST; // 循环链表类型typedef struc原创 2021-10-15 22:07:01 · 247 阅读 · 0 评论 -
链式存储的线性表的实现
链式存储的线性表的实现说明参考资料传智播客扫地僧的数据结构教学视频线性表基础知识参考该实现的说明C语言实现实现算法和数据的分离实现link_list.h#ifndef _LINK_LIST_H_#define _LINK_LIST_H_#ifdef __cplusplusextern "C"{#endiftypedef void LINK_LIST; // 链式线性表的类型typedef struct LINK_LIST_NODE //原创 2021-10-13 15:07:07 · 587 阅读 · 0 评论 -
顺序存储的线性表的实现
顺序存储的线性表的实现说明参考资料传智播客扫地僧的数据结构教学视频线性表基础知识参考该实现的说明C语言实现实现算法和数据的分离实现seq_list.h#ifndef _SEQ_LIST_H_#define _SEQ_LIST_H_#ifdef __cplusplusextern "C"{#endiftypedef void SEQ_LIST; // 顺序线性表typedef void SEQ_LIST_NODE; // 线性表的节点类型原创 2021-10-13 14:54:41 · 416 阅读 · 0 评论 -
图
文章目录图什么是图关于图的术语图的表示抽象数据类型描述代码实现图的遍历图什么是图图的定义“图”G可以表示为顶点和边的两个集合:G=(V,E)G=(V,E)G=(V,E)。每条边是一个顶点对(v,w)∈E(v,w) \in E(v,w)∈E,并且v,w∈Vv,w \in Vv,w∈V。通常:用∣V∣|V|∣V∣表示顶点的数量(∣V∣≥1)(|V| \geq 1)(∣V∣≥1)...原创 2020-01-30 04:03:30 · 293 阅读 · 0 评论 -
图操作集代码实现(C语言)
文章目录图操作集的代码实现用邻接矩阵表示图用邻接表表示图图操作集的代码实现图的抽象数据类型描述详见:https://www.youkuaiyun.com/用邻接矩阵表示图图的描述typedef struct GNode{ int NV;//顶点数 int NE;//边数 WeightType G[MaxVertexNum][MaxVertexNum];//类型为W...原创 2020-01-30 01:43:27 · 1174 阅读 · 0 评论 -
哈夫曼树与哈夫曼编码
文章目录哈夫曼树和哈夫曼编码关于编码哈夫曼树哈夫曼编码构造哈夫曼树哈夫曼树和哈夫曼编码关于编码常用编码方式等长码:每个字符对应码字的码长都一样,例如ASCII码表中的128个字符可以用7位码长的01位串表示( 27=1282^7=12827=128 )。思考能不能用不等长的编码方式来编码字符,出现次数较多的字符用较短的码长的码字来存储,出现次数较少的字符用较长的码长的码字来存储,...原创 2020-01-22 19:49:01 · 1205 阅读 · 0 评论 -
堆(C语言)
文章目录堆(heap)什么是堆最小堆的操作操作集的实现(C语言)堆(heap)什么是堆定义堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。性质结构性:用数组表示的完全二叉树。有序性:任意节点的关键字(权值)是其子树所有节点的最大值(或最小值)父节点大于子节点:最大堆(MaxHeap)父节点小于子节点:最小堆(Min...原创 2020-01-18 20:40:13 · 4571 阅读 · 0 评论 -
平衡二叉树
文章目录平衡二叉树什么是平衡二叉树一些概念平衡二叉树定义平衡二叉树的一些性质平衡二叉树的调整一些概念平衡二叉树的调整方法平衡二叉树什么是平衡二叉树【例】搜索树结点不同插入次序,将导致不同的深度和平均查找长度ASL。将月份按照不同次序插入二叉搜索树,依据字典顺序比较大小,得到三棵不同的树如下:ASL的不同,导致二叉搜索树的搜索效率不同,ASL越小,搜索效率越高,故引进了平衡二叉树的概念...原创 2019-09-01 11:48:11 · 1025 阅读 · 0 评论 -
二叉搜索树(C语言)
文章目录二叉搜索树什么是二叉搜索树二叉搜索树的一些操作二叉搜索树什么是二叉搜索树二叉搜索树(BST,Binary Search Tree),也称二叉排序树或二叉查找树二叉搜索树:一棵二叉树,可以为空;如果不为空,满足以下性质:非空左子树的所有键值小于其根结点的键值。非空右子树的所有的键值大于其根结点的键值。左右子树都是二叉搜索树。二叉搜索树例子:二叉搜索树的一些操作...原创 2019-08-31 19:30:57 · 417 阅读 · 0 评论 -
二叉树(C语言)
文章目录二叉树二叉树的定义二叉树的几个重要性质二叉树的抽象数据类型定义二叉树的存储结构二叉树的遍历遍历二叉树的应用二叉树二叉树的定义二叉树TTT:一个有穷的结点的集合。这个结合可以为空如不为空,则它由根结点和称为其 左子树TLT_LTL 和 右子树TRT_RTR 的两个不相交的二叉树组成。二叉树具体五种基本形态。空树只有一个结点只有一个结点和左子树只有一个结点和...原创 2019-08-29 19:20:18 · 2009 阅读 · 0 评论 -
树(C语言)
文章目录树树的定义树的一些基本术语树的表示树树的定义树(Tree):n(n≥0)n(n \geq 0)n(n≥0)个结点构成的有限集合。当n=0时,称为空树。对于任一棵非空树(n>0n>0n>0),它具有以下性质:树中有一个称为“根(Root)”的特殊结点,用r表示;其余结点可分为m(m>0)m(m>0)m(m&g...原创 2019-08-29 19:07:36 · 9237 阅读 · 0 评论 -
数据结构:线性结构(C语言)
文章目录线性结构线性表什么是线性表线性表的抽象类型描述线性表的实现广义表广义表定义多重链表堆栈什么是堆栈堆栈的抽象数据类型描述堆栈的顺序存储实现堆栈的链式存储实现堆栈的应用队列什么是队列队列的抽象数据类型描述队列的顺序存储实现队列的链式存储实现线性结构线性表什么是线性表线性表(Linear List):由同类型数据元素构成有序序列的线性结构。表中元素个数称为线性表的长度。线性...原创 2019-08-23 15:48:26 · 2657 阅读 · 0 评论