![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
研究生生活——数据结构
用C++复现经典的数据结构
LikeMarch
不悲叹过去,不荒废现在,不惧怕未来。
展开
-
并查集及优化(按个数合并+路径压缩)
2020年9月30日 周三 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 并查集的优化2. 并查集代码2.1 主函数 main.cpp2.2 stdafx.h参考文献1. 并查集的优化实现了并查集,同时进行了两点优化:按树的大小进行合并(也可按照树的秩(高度)进行合并,两种方法效率接近)路径压缩(迭代法不够极致,递归法压缩的比较极致)代码是用VS2019实现的,完整工程放在了我的github上,有需要的也可以自取。github地址:https://github.com/M原创 2020-09-30 18:55:24 · 302 阅读 · 0 评论 -
拓扑结构和几何结构的区别
2020年9月28日 周一 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】最近在看数据结构中的图,里面有一节叫做拓扑排序,不是很明白这个“拓扑”是什么意思,上网搜了一下,有个说法如下,感觉比较通俗易懂。所谓“拓扑”就是把实体抽象成与其大小、形状无关的“点”,而把连接实体的线路抽象成“线”,进而以图的形式来表示这些点与线之间关系的方法,其目的在于研究这些点、线之间的相连关系。表示点和线之间关系的图被称为拓扑结构图。拓扑结构与几何结构属于两个不同的数学概念。在几何结构中,我们要考察的是点、线之间的位置关原创 2020-09-28 17:38:41 · 8141 阅读 · 0 评论 -
C++实现数据结构——图(完整清晰)
2020年9月25日 周六 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 图类 .h文件——graph.h4. 图类 .cpp文件——graph.cpp5. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的图类,成员函数实现了图的创建(保存为邻接矩阵或邻接表)、打印、遍历(深度优先遍历和广度优先遍历)等功能。代码是用VS2019实现的,每个函数的功能都添加了一定注释,完整工程放在了我的github上,有需要的也可以自取。原创 2020-09-25 20:53:02 · 2348 阅读 · 0 评论 -
C++实现数据结构——二分搜索和二叉搜索树
2020年8月25日 周二 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. BST类 .h文件——bstree.h4. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的二分搜索和二叉搜索树(BST)类,成员函数实现了BST和AVL树(高度平衡的BST)的创建,遍历,查找、删除指定结点等功能,主函数中有所有成员函数的测试案例。代码是用VS2019实现的,每个函数的功能都添加了一定注释,由于用了模板,函数的声明和定义都放在了原创 2020-08-25 15:40:35 · 152 阅读 · 0 评论 -
C++实现数据结构——二叉树(注释完整、逻辑清晰)
2020年8月14日 周五 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 二叉树类 .h文件——binarytree.h4. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的二叉树类,成员函数实现了二叉树的创建,遍历,求高度,求结点层次,求结点的父结点、兄弟结点和子结点等功能,主函数中有所有成员函数的测试案例。代码是用VS2019实现的,每个函数的功能都添加了一定注释,由于用了模板,函数的声明和定义都放在了.h文件中,完原创 2020-08-14 14:40:32 · 401 阅读 · 0 评论 -
C++实现数据结构——循环队列和链式队列
2020年8月10日 周一 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 循环队列类 .h文件——circlequeue.h4. 链式队列类 .h文件——linkqueue.h5. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的循环队列类和链式队列类,成员函数实现了队列的基础功能:isEmpty(),isFull(),EnQueue(),DeQueue(),GetFront(),GetLength()等,主函数中有三个原创 2020-08-10 21:49:04 · 572 阅读 · 0 评论 -
C++实现数据结构——顺序栈和链栈
2020年8月8日 周六 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 顺序栈类.h文件——sqstack.h4. 链栈类.h文件——linkstack.h5. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的顺序栈和链栈类,成员函数实现了栈的基础功能:isEmpty(),push(),pop(),top(),并且用实现的栈解决了两个问题:进制转换和判断表达式是否有效,代码是用VS2019实现的,每个函数的功能都添加了一原创 2020-08-08 17:57:56 · 558 阅读 · 0 评论 -
C++实现数据结构——单链表
2020年8月7日 周五 天气晴 【不悲叹过去,不Install Package荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 单链表类.h文件——linklist.h4. 单链表类.cpp文件——linklist.cpp5. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的单链表类,功能包括插入、删除、查找相关元素,分离链表等操作。代码是用VS2019实现的,每个函数的功能都添加了一定注释,完整工程放在了我的github上,有需要的也可以自取。原创 2020-08-07 16:30:52 · 338 阅读 · 0 评论 -
C++实现数据结构——顺序表
2020年7月31日 周五 天气晴 【不悲叹过去,不荒废现在,不惧怕未来】本文目录1. 引言2. 主文件——main.cpp3. 顺序表类.h文件——sqlist.h4. 顺序表类.cpp文件——sqlist.cpp5. 预编译头文件——stdafx.h参考文献1. 引言用C++实现了简单的顺序表类,功能包括插入、删除、查找、排序元素等操作。代码是用VS2019实现的,每个函数的功能都添加了一定注释,完整工程放在了我的github上,有需要的也可以自取。github地址:https://gith原创 2020-07-31 20:29:03 · 443 阅读 · 1 评论