Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Codes of my MOOC Course <Play Graph Algorithms in Java>. Updated contents and practices are also included. 我在慕课网上的课程《Java语言玩转图论算法》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。

NotificationsYou must be signed in to change notification settings

CoolCood/Play-with-Graph-Algorithms

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

大家好, 欢迎大家来到我在慕课网上的实战课程《玩儿转图论算法》的官方代码仓。这个代码仓将不仅仅包含课程的所有源代码,还将发布课程的更新相关内容,勘误信息以及计划的更多可以丰富课程的内容,如更多分享,多多练习,等等等等。课程全部使用Java语言讲解,课程代码仓暂时只提供Java语言版本。

大家可以下载、运行、测试、修改。如果你发现了任何bug,或者对课程中的任何内容有意见或建议,欢迎和我联系:)

个人网站liuyubobobo.com [废弃重整中...]

电子邮件liuyubobobo@gmail.com

微博:刘宇波bobo http://weibo.com/liuyubobobo

知乎:刘宇波 http://www.zhihu.com/people/liuyubobobo

知乎专栏:是不是很酷 https://zhuanlan.zhihu.com/liuyubobobo

个人公众号:是不是很酷:)

QRCode

更多说明

  • 每一章后面有补充代码的部分。课程本身已经独立成体系,补充内容只是额外拓展,不影响课程整体的学习。对于课程整体学习,可以忽略。建议先完成课程必要部分学习,再酌情研究补充内容。

  • 对于补充代码部分的内容,大多是课程中提及的拓展内容。对于这部分内容,我会不定期更新代码,但不保证时间。放在课程目录中,主要是供大家拓展思路使用。大家也可以理解成是思考练习,可以自行编写代码练习完成补充内容,相信是很好的编程锻炼:)当然,有任何问题可以在问答区进行提问。

  • 课程讲义的PDF版本不在github上提供,大家可以在慕课网上 "下载 -> 查看讲师源码" 中各个章节文件夹下找到。

  • 请不要使用github,微信,QQ,邮件进行答疑。 请使用课程问答区进行答疑。谢谢!

重要:本课程前置课程

本课程前置课程为我的《玩转数据结构》,建议学习完《玩转数据结构》再学习本课程,效果更好:)

《玩转数据结构》课程, 代码仓:Play-with-Data-Structures

更多相关代码仓

更多推荐

  • 感谢学习课程的大佬@nicemayi 同学使用 Python 完成了课程的全部内容。有使用Python学习课程的同学,可以去大佬的代码仓观望。传送门:https://github.com/nicemayi/play-with-graph-algorithms 同时,在这个代码仓下,还有大佬写的这个课程的学习笔记,简明扼要,非常有价值!

课程源码目录

第一章 欢迎大家学习《玩儿图论算法》[无代码]
1-1 欢迎大家学习《玩儿转图论算法》[无代码]
1-2 课程学习的更多说明[无代码]
1-3 课程编程环境的搭建[无代码]
第二章 图论基础章节 Java 源码
2-1 图的分类[无代码]
2-2 图的基本概念[无代码]
2-3 图的基本表示:邻接矩阵Java
2-4 更多图的方法Java
2-5 图的基本表示:邻接表[无代码]
2-6 邻接表的实现Java
2-7 邻接表的问题和改进[无代码]
2-8 实现邻接表的改进Java
2-9 图的基本表示的比较Java
第三章 图的深度优先遍历章节 Java 源码
3-1 数据结构遍历的意义[无代码]
3-2 从树的深度优先遍历到图的深度优先遍历[无代码]
3-3 DFS逻辑的微观解读[无代码]
3-4 实现图的深度优先遍历Java
3-5 图的深度优先遍历的改进Java
3-6 更多关于图的深度优先遍历[无代码]
3-7 【文字】邻接矩阵的深度优先遍历[见慕课网代码仓]
3-8 【文字】创建统一的图接口[见慕课网代码仓]
3-9 【文字】深度优先遍历的非递归实现[见慕课网代码仓]
第四章 图的深度优先遍历的应用章节 Java 源码
4-1 图的联通分量的个数Java
4-2 DFS 中的一个小技巧Java
4-3 求解联通分量Java
4-4 单源路径问题[无代码]
4-5 单源路径问题的编程实现Java
4-6 【文字】单源路径问题的小优化[见慕课网代码仓]
4-7 【文字】所有点对路径问题[见慕课网代码仓]
4-8 提前结束递归:路径问题的另一个优化Java
4-9 无向图的环检测问题Java
4-10 二分图检测[无]
4-11 实现二分图检测Java
4-12 本章小结和更多拓展[无]
补充内容 1 所有路径问题-
第五章 图的广度优先遍历章节 Java 源码
5-1 从树的广度优先遍历到图的广度优先遍历[无]
5-2 图的 BFS 的实现Java
5-3 使用 BFS 求解路径问题Java
5-4 【文字】更多关于使用 BFS 求解路径问题[见慕课网代码仓]
5-5 【文字】使用 BFS 求解联通分量问题[见慕课网代码仓]
5-6 【文字】使用 BFS 求解环检测问题[见慕课网代码仓]
5-7 【文字】使用 BFS 求解二分图检测问题[见慕课网代码仓]
5-8 BFS 的重要性质[无]
5-9 无权图的最短路径Java
5-10 DFS 和 BFS 的神奇联系,与本章小结[无]
第六章 图论问题建模和 Floodfill章节 Java 源码
6-1 算法笔试中图论问题的书写Java
6-2 图的建模和二维数组中的小节
6-3 实现图的建模问题Java
6-4 Flood FillJava
6-5 更多关于 Flood Fill 的问题[无]
6-6 【文字】联通性和并查集[见慕课网代码仓]
6-7 【文字】在 Leetcode 上的更多优化[见慕课网代码仓]
第七章 图论搜索和人工智能章节 Java 源码
7-1 算法笔试中的 BFS 问题Java
7-2 图论建模的核心:状态表达[无]
7-3 实现转盘锁问题Java
7-4 一道智力题Java
7-5 代码实现一道智力题Java
7-6 Leetcode 上一个困难的问题Java
7-7 实现滑动谜题Java
7-8 图论搜索和人工智能[无]
补充代码1 过河问题代码参考-
第八章 桥,割点和图的遍历树章节 Java 源码
8-1 什么是桥[无]
8-2 如何寻找桥[无]
8-3 完整模拟寻找桥算法[无]
8-4 实现寻找桥算法Java
8-5 图的遍历树[无]
8-6 割点和寻找割点的算法[无]
8-7 实现寻找割点的算法Java
8-8 本章小结:寻找桥和割点[无]
第九章 哈密尔顿回路和状态压缩章节 Java 源码
9-1 哈密尔顿回路和 TSP[无]
9-2 求解哈密尔顿回路的算法[无]
9-3 实现哈密尔顿回路算法Java
9-4 哈密尔顿回路算法的一个优化Java
9-5 【文字】哈密尔顿路径算法[见慕课网代码仓]
9-6 Leetcode 上的哈密尔顿问题Java
9-7 状态压缩[无]
9-8 基于状态压缩的哈密尔顿回路算法Java
9-9 记忆化搜索Java
9-10 哈密尔顿回路和哈密尔顿路径小结[无]
第十章 欧拉回路与欧拉路径章节 Java 源码
10-1 什么是欧拉回路[无]
10-2 欧拉回路的存在性[无]
10-3 实现欧拉回路存在的判断Java
10-4 求解欧拉回路的三种算法[无]
10-5 Hierholzer 算法模拟[无]
10-6 实现 Hierholzer 算法Java
10-7 欧拉路径和更多欧拉回路相关问题[无]
补充代码 1 欧拉路径-
补充代码 2 欧拉回路的递归实现-
第十一章 最小生成树章节 Java 源码
11-1 带权图及实现Java
11-2 Map 的遍历Java
11-3 最小生成树和 Kruuskal 算法[无]
11-4 切分定理[无]
11-5 Kruskal 算法的实现Java
11-6 并查集动态环检测Java
11-7 Prim 算法原理[无]
11-8 Prim 算法的实现Java
11-9 Prim 算法的优化Java
11-10 关于最小生成树问题的更多讨论[无]
第十二章 最短路径算法章节 Java 源码
12-1 有权图的最短路径问题[无]
12-2 Dijkstra 算法的原理和模拟[无]
12-3 实现 Dijkstra 算法Java
12-4 Dijkstra 算法的优化Java
12-5 更多关于 Dijkstra 算法的讨论Java
12-6 Bellman-Ford 算法[无]
12-7 负权环[无]
12-8 实现 Bellman-Ford 算法Java
12-9 更多关于 Bellman-Ford 算法的讨论Java
12-10 Floyed 算法原理
12-11 实现 Floyed 算法Java
12-12 更多关于最短路径问题的讨论[无]
第十三章 有向图算法章节 Java 源码
13-1 有向图的实现Java
13-2 有向图算法Java
13-3 有向图环检测和 DAGJava
13-4 有向图的度:入度和出度Java
13-5 有向图求解欧拉回路Java
13-6 拓扑排序[无]
13-7 拓扑排序的实现Java
13-8 另一个拓扑排序算法[无]
13-9 另一个拓扑排序的实现Java
13-10 有向图的强连通分量[无]
13-11 Kosaraju 算法[无]
13-12 Kosaraju 算法的实现Java
13-13 有向图算法小节[无]
第十四章 网络流模型和最大流问题章节 Java 源码
14-1 网络流模型和最大流问题[无]
14-2 Ford-Fulkerson 思想[无]
14-3 Edmonds-Karp 算法[无]
14-4 最大流算法的基本架构Java
14-5 实现 Edmonds-Karp 算法Java
14-6 Edmonds-Karp 算法的测试和更多讨论Java
14-7 最大流问题建模Java
14-8 本章小结和更多相关讨论[无]
第十五章 匹配算法章节 Java 源码
15-1 最大匹配和完全匹配[无]
15-2 使用最大流算法解决匹配问题[无]
15-3 实现使用最大流算法解决匹配问题Java
15-4 从 Leetcode 上一个 Hard 问题看匹配算法建模Java
15-5 匈牙利算法[无]
15-6 匈牙利算法的实现Java
15-7 基于递归实现的匈牙利算法Java
15-8 匹配问题小结[无]
第十六章 更广阔的图论算法世界[更新中,敬请期待]
16-1 大家加油![无]

课程讲义的PDF版本不在github上提供,大家可以在慕课网上 "下载 -> 查看讲师源码" 中各个章节文件夹下找到。

大家加油!:)

About

Codes of my MOOC Course <Play Graph Algorithms in Java>. Updated contents and practices are also included. 我在慕课网上的课程《Java语言玩转图论算法》示例代码。课程的更多更新内容及辅助练习也将逐步添加进这个代码仓。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java100.0%

[8]ページ先頭

©2009-2025 Movatter.jp