数据结构
文章平均质量分 72
学习并总结数据结构的知识,用C++实现
哼哧哼哧做大事
这个作者很懒,什么都没留下…
展开
-
花五分钟学会十大排序--第一部分
这里将介绍直接插入排序,希尔排序,气泡排序,快速排序,简单排序,堆排序,归并排序。希望使用五分钟时间,帮你疏通之间的关系。原创 2022-11-18 12:01:48 · 97 阅读 · 0 评论 -
图的Prim算法真的不难
我想分享以下几个有关图的算法,这四个算法分别是Prim算法、Kruskal算法、Dijkstra算法、Floyed算法。在这里,Prim算法、Kruskal算法需要使用到最小生成树的知识。生成树:连通图的生成树是包含图中·全部顶点的一个极小连通子图。最小生成树:在生成树的概念里面加入权值的概念,代价最小的生成树就是最小生成树。原创 2022-11-01 19:58:19 · 164 阅读 · 0 评论 -
轻轻松松学会图的遍历
图的存储结构一般常用邻接矩阵和邻接表,邻接矩阵可以称为数组表示法,用一个一维数组vertex[]来存储顶点的信息,再用一个二维数组edge来存储边的信息,这个二维数组我们称为邻接矩阵;对于邻接表来说,是使用顺序链表的方式存储,类似于树的孩子表示法。原创 2022-10-27 14:59:02 · 355 阅读 · 0 评论 -
花一点点时间了解图的遍历操作
问题:在图中,不像树有一个根节点,所以是没有一个确定的开始顶点,这就会导致任意一个顶点都可作为遍历的起始顶点,那么,我们改如何选取遍历的起始顶点?问题:从某个顶点出发可能到达不了所有其他顶点,这个情况是的,例如非连通图,从一个顶点出发,只能访问它所在连通分量上的所有顶点,那么,如何才能遍历图的所有顶点?问题:由于图中可能存在回路,某些顶点可能会被重复访问,这个问题一开始困扰我很久。那么,如何避免遍历不会因回路而陷入死循环?问题:在图中,一个顶点可以和其他多个顶点相邻接,当这样的顶点访问过后,如何选取下原创 2022-10-27 13:43:11 · 393 阅读 · 0 评论 -
图的基本知识
图(graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G=(V,E),其中,G表示一个图,V是顶点的集合,E是顶点之间边的集合。原创 2022-10-17 20:10:52 · 194 阅读 · 0 评论 -
五分钟玩转森林小知识
今天我们谈谈森林的知识点,简单理解,森林是有限棵树互不相交的集合。和现实中的一样,森林由树构成。所以我们也要强调森林的知识点,构成的是树。森林与树是可以相互变化的,对于任何一棵树,删除其根就变成森林,如果森林里面的树作为一个根的子树,就变成了树。原创 2022-10-07 12:10:53 · 1162 阅读 · 0 评论 -
二叉树的遍历使用C++
先说一下下,本篇我总结的是树的存储结构和二叉树的构造与遍历代码(前序(根)遍历、中序(根)遍历和后序(根)遍历、层序遍历)。树的知识有点多,后期我学会了,再跟大家分享。原创 2022-09-21 17:56:19 · 344 阅读 · 0 评论 -
树的知识总结
树虽然比线性表复杂,但作为数据结构的一种,树仍然要表示数据以及数据与数据之间的关系。要想表示清楚数据之间的关系,树的结点或树必须有相应的成员,为了达到高效表示或者访问的目的,树中的数据有不一样的存储方法;为了充分利用存储空间,给空闲的空间赋予新的意义(如线索二叉树),从而得到新的树类型。原创 2022-09-21 15:42:26 · 501 阅读 · 0 评论 -
链栈和链队的基本实现
这些知识还是挺简单的,要知道栈是先进后出,队是先进先出。算法是为了解决问题。栈和队列作为两种特殊的线性表,一定有它存在的道理。希望我可以给你说清楚代码。原创 2022-09-06 15:28:30 · 641 阅读 · 1 评论 -
链表的知识总结
链表其实也算好理解的一种数据结构,其和顺序表不一样的是数据元素按逻辑次序链接在一起。本文用C++代码实践单链表,如有疑问一起讨论吧原创 2022-09-03 20:50:17 · 730 阅读 · 2 评论 -
C++代码实现栈基本操作
C++代码实现栈基本操作,可以实现的,点进不亏原创 2022-09-02 19:48:09 · 6043 阅读 · 2 评论