简单图+Havel_Hakimi定理
1.什么是简单图:
没有平行边和自环
什么是平行边?对于无向图,如果两个点之间有一条以上的边,则这些边是平行边;
对于有向图,如果一个点指向另一个点的边多于一条,则这些边是平行边
什么是自环?边的两个端点是同一个点
2.度序列
一个由图的各个点的度数组成的序列
3.Havel_Hakimi定理:用于判断一个度序列能否转换成一个简单图
流程:度序列按降序排列
初始i=0,除去第i个点d[i],i+d[i]的每个点度数一次减1
i++,重复上述步骤
如果当前度数最大的点的度数大于总的点数,则不能组成图
如果-1后,有的点的度数出现负数,则不能组成图
执行完循环后,如果最后一个点的度数不为0,则不能组成图
核心代码如下:
bool Havel_Hakimi(){ for(int i=0; i<n-1; ++i){ sort(arr+i,arr+n,greater<int>()); if(i+arr[i] >= n) return false; for(int j=i+1; j<=i+arr[i] ; ++j){ --arr[j]; if(arr[j] < 0) return false; } } if(arr[n-1]!=0) return false; return true;
}
参考博客:Havel_Hakimi
简单图+Havel_Hakimi定理相关推荐
- 电子科技大学 图论期末复习 公式索引
title: 图论期末考试复习 date: 2020-08-17 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于方便复习公式查阅,公式 ...
- 电子科技大学 图论期末复习 公式快速索引
title: 图论期末考试复习 date: 2020-08-24 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于复习参考,公式或多有误 ...
- 离散数学 —— 二元关系(图、零图与平凡图、度、握手定理、平行边、简单图与完全图、补图、子图与生成子图、同构、通路与回路、点与边割集、最短路线问题、强弱联通图、邻接矩阵与可达矩阵、欧拉图、平面图等)
5.1 关系及其表示: 补充一点: 简单路径:无重复边(点不作要求) 基本路径(初级路径):无重复点 一个路径是基本路径,那么必是简单路径 5.2 路与回路: 5.3 图的矩阵 ...
- 证明连通简单图是哈密顿图
定理 对于v阶无向简单图,如果对于图中任意两点的度数之和都大于等于顶点数,那么该图就是哈密顿图
- 可简单图化算法(Havel算法)
算法分析(推理过程) 首先,我们很容易通过握手定理(所以点的度数加起来是偶数)知道,对应的度序列是否可图化. 在确定了可图化之后.但是担心会出现不可简单图化的情况. 我们只需要对于这种可能进行讨论就好 ...
- hdu 2454 Degree Sequence of Graph G(可简单图化判定)
传送门 •Havel-Hakimi定理: 给定一个非负整数序列{d1,d2,...dn},若存在一个无向图使得图中各点的度与此序列一一对应,则称此序列可图化. 进一步,若图为简单图,则称此序列可简单图 ...
- 一张图带你看完图论第一章(包含定义、定理、公式、推导证明和例题)
1.1 图的基本描述 几种特殊图 有限图 复合图 简单图(无环无重边) 完全图 Kn 边数最多的简单图 同构下 唯一 边数Cn2=n(n-1)/2 ...
- 扒一扒那些叫欧拉的定理们(三)——简单多面体欧拉定理的抽象形式
早点关注我,精彩不迷路! 在前面的文章中,我们介绍和证明了简单多面体欧拉定理,相关内容请戳: 扒一扒那些叫欧拉的定理们(二)--简单多面体欧拉定理的证明 扒一扒那些叫欧拉的定理们(一)--基本介绍和简 ...
- [matlab]havel定理证明(笔记)
[matlab]havel定理证明 是否可以由度序列生成简单图是图论中一个重要的内容. havel定理是解决这一问题的重要方法. havel定理证明 问题引出 简单图化问题 简单图 简单图即是指图上不 ...
最新文章
- python cmdb资产_SuperCMDB - 资产管理+跳板审计
- 去除Office 2010的右键“共享文件夹同步”菜单
- webpack前言:前端模块系统的演进
- token验证_如何利用 C# 爬取带 Token 验证的网站数据?
- 路由器setup模式
- 【跃迁之路】【590天】程序员高效学习方法论探索系列(实验阶段347-2018.09.18)...
- 如何让计算机桌面字体变大,如何把字体放大 如何更改桌面与网页字体大小
- python list 元素位置,怎么查找python列表中元素的位置
- 使用c++filt命令还原C++编译后的函数名
- 想当程序员吗?这11所大学计算机专业堪称国内顶级,高考考生千万不要错过
- 2021厦大计算机考研炸了,厦门大学2021年硕士研究生复试名单
- mp4视频在flash中边下载边播放
- Windows管理用户账号
- urllib库爬取拍信创意图片(post请求)json传参
- RK3568-ANDROID11-降频DDR
- 一年中所有节日的排列顺序_【一年中的节日按时间顺序】时间顺序的春节风俗...
- 谁说MAC原生无法玩游戏---START-腾讯云游戏-开启MAC,低配WIN以及TV玩网游新时代
- Python测试习题
- RabbitMQ:消费者和生产者。
- 在Vmware15虚拟机工具上安装NeoKylin操作系统
热门文章
- 刷水~~~~~~~~~~~
- vue学习笔记(一) ---- vue指令(过滤器)
- STM32 TIM1PWM波输出
- 运用图像处理解决基于MRI的脑肿瘤图像分割问题
- 查询,珍爱网ID,百合网ID,世纪佳缘ID,有缘网ID
- oracle 如何查看监听,[转载]查看oracle监听器的状态及打开监听器服务
- k-means像素聚类
- 【脑电数据处理】electrophysiology and EEG(AP\LFP\ECoG\EEG)
- 词云中去重复的词_手把手教你挖掘蓝海词,打造爆款标题!
- 关于人工智能企业商标退化及商标保护