[matlab]havel定理证明
是否可以由度序列生成简单图是图论中一个重要的内容。
havel定理是解决这一问题的重要方法。
havel定理证明
问题引出
简单图化问题
简单图
简单图即是指图上不含自环与平行边的无向图(即一个节点只能与另一个节点形成一条边,且不能和自身形成自环)
已知我们有一个度序列数组,代表了在一个无向图中各节点的度数。那么我们是否可以通过这个度序列生成一个简单图咧?
已知havel定理是回答这一问题的有力理论,本文尝试就归纳法证明定理的合理性并用matlab实现。
havel定理介绍
首先将度序列D<d1,d2,d3,d4…dn>按从大到小的顺序排列形成一个不增序。
N-1>=d1>=d2>=d3>=d4…>=dn>=0
首先将度数最大的节点删除,也即是先删除点d1,再将其后的d1个点(2,3,…d1+1)上的度数全部减一,表示将度数最大的节点与该节点连接的所有边全部删除。若经过这一操作形成的新度序列可以生成一个简单图,那么原序列也可以生成一个简单图。
havel定理证明
考虑归纳法证明:
1.有已排序好的度数序列D(d1,d2,d3…dm)满足握手定理。
又:
M-1>=dm>=dm-1>=dm-2&g