数据结构与算法
文章平均质量分 87
数据结构与算法
Android西红柿
CSDN内容合伙人、技术专家 , 从零开始做日活千万级APP。
专注于分享各领域原创系列文章 ,擅长java、移动开发、人工智能等 希望大家多多支持
展开
-
【算法基础】拓扑排序及实战
这里涉及到图的概念,感兴趣的同学请移驾。原创 2023-06-09 10:29:54 · 3212 阅读 · 73 评论 -
【基础知识】一文看懂深度优先算法和广度优先算法
先上个图现在我们要访问图中的每个节点,即图的遍历。图的遍历是指,从给定图中任意指定的顶点(称为初始点)出发,按照某种搜索方法沿着图的边访问图中的所有顶点,使每个顶点仅被访问一次,这个过程称为图的遍历。我们根据访问节点的顺序与方式(根据搜索方法),可以分为广度优先(BFS)和深度优先(DFS),这是图论中两种非常重要的算法,生产上广泛用于拓扑排序,寻路(走迷宫),搜索引擎,爬虫等。我们分别来介绍。原创 2023-06-08 16:45:30 · 8813 阅读 · 47 评论 -
【基础知识整理】图的基本概念 & 邻接矩阵 & 邻接表
定义:图(graph)是由一些点(vertex)和这些点之间的连线(edge)所组成的;其中,点通常被成为"顶点(vertex)“,而点与点之间的连线则被成为"边或弧”(edege)。通常记为,G=(V,E)。图是一种重要的数据结构,基本概念包括:顶点,边,有向,无向,权,路径回路,连通域,邻接点,度,入边,出边,入度,出度等等,很好理解。原创 2023-06-08 11:52:21 · 2773 阅读 · 35 评论 -
【基础知识整理】时间复杂度 & 空间复杂度
时间复杂度与空间复杂度的作用是在衡量一个算法的优劣性,以及在二者之间进行权衡,寻找二者的平衡点。时间复杂度是指执行算法所需时间的增长率,而空间复杂度则是指执行算法所需存储空间的增长率。高时间复杂度的算法可能需要在短时间内完成大规模数据的计算,而高空间复杂度的算法可能需要占用大量的内存空间。在进行算法设计和分析时,通常需要在时间和空间之间进行权衡,以找到适合特定问题的最佳算法。了解算法的时间和空间复杂度可以帮助我们确定在处理不同问题时哪些算法是可行的,以及如何优化算法以减少其时间和空间的占用。原创 2023-06-07 21:15:00 · 2182 阅读 · 44 评论