图论学习1
目录
图论思考
图论概念以及图论问题
Dijkstra算法解最短路问题
01 图论思考
图论其实与运筹学中的规划问题有象类似之处,规划问题的最终目的是要某个指标(时间,空间,金钱等)达到最优,而图论也是如此,要求最短路径,或者是最小的权和等等。甚至可以说,图论是为了规划问题中的约束而设计的。
小学奥赛中曾经有过一笔画问题,当时有一个结论是当途中存在0个或者2个奇顶点(每个节点的连接路线条数为奇数的顶点)时可以完成一笔画。其实也正对应图论的“度”,连通图等概念。还有一个由抽屉问题引申出来的问题是任意六个人一定存在三个人都互相认识或者都不认识。如果将每个人视作一个点,相互之间认识与不认识用不同颜色的线连接,求解的问题也即成为图中是否存在三边同色的闭环。
02 图论概念
03 Dijkstra解最短路径问题
求解要求:
是连通图并给赋权,另外要求权值为正
算法的核心思想在于:如果子问题是最优的,这一次的决策也是最优的,那么母问题也就最优
但是如果负权值出现,就使得上述不成立。
算法操作:
其他点以此类推...
简单概括就是:对每个点进行标号T为暂时,P为永久,从起始点开始,选择最小的T值标号变为P,对于每一个P点,都要重新计算每个点的T权值,。