持续学习&持续更新中…
守破离
《玩转数据结构》是《图论课程》的前置课程。
本课程主要学习图论这个领域中相关的一些算法问题
图论概述
- 在计算机科学中,图是一种数据结构。
- 和树结构一样,每一个节点都可以和若干个节点相连;
- 和树结构不同的是,图没有层次这种关系,每一个节点都可以和任意的其他节点相连接,没有父亲、孩子、uncle等这些关系。
- 对于图结构来说,元素之间的关系是更加自由的。
- 所以,图结构也是更加灵活的一种数据结构。
- 图结构比线性结构比树结构要难一些、复杂一些。
-
图论这个领域研究的是关于图的算法(图论算法)
-
图论算法研究的是基于图这种数据结构相应的一些算法问题
-
图论这个领域在学习的过程中和之前学习数据结构中的线性结构树结构稍微有一些不同的地方在于:学习线性结构树结构的时候,侧重点在于学习如何对这些结构进行增删改查操作,而图论不仅仅只是学习如何对图结构的增删改查,图论真正难的是基于图这种数据结构去解决一些问题:比如说最短路径问题、匹配问题、网络流问题、欧拉路径问题、汉密尔顿路径问题等等等等,这些算法是研究图论这个领域的重点,而不仅仅局限于对图这种数据结构增删改查。
-
图这种数据结构本身(的存储)是很简单的,真正难的是基于图这种数据结构相应的算法——图论算法。
课程特色
- 深入浅出
- 课程中的一些算法问题甚至已经超越面试、考研,已经达到了一定的难度、深度
- 不是刷题课程,重点还是图论领域中的算法
- 图论这个领域中都有什么样的问题
- 解决这些问题的一些经典的思路是怎样的
课程大纲
图论的应用
- 基础的数据结构和算法是高级的数据结构和算法的基石
- 算法很多时候就是一个底层的工具,它在帮助我们揭示最朴素的那个问题的解,但是,怎么使用算法这个工具,很多时候,我们还需要在不同的领域中进行开创性的探索、实验。
- 但不管怎样,我们必须先了解、掌握、熟悉这些工具,了解掌握了这些工具之后才能灵活的运用这些工具,进一步的解决更多的问题。
- 算法的意义:它帮助我们拓展了我们的思维,丰富了我们解决问题的工具库,更深刻的帮助我们认识了很多问题的本质,进而这些内容经过我们的消化吸收,就会形成属于我们自己的所谓的计算机技术人的那种素养,那种看待问题的方式,这些都将逐渐帮助我们创新性的解决更多的问题,做出更多的成就,慢慢的为这个世界做出更多的贡献。
参考
liuyubobobo: 玩转算法系列–图论精讲.
本文完,感谢您的关注支持!