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定理相关推荐

  1. 电子科技大学 图论期末复习 公式索引

    title: 图论期末考试复习 date: 2020-08-17 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于方便复习公式查阅,公式 ...

  2. 电子科技大学 图论期末复习 公式快速索引

    title: 图论期末考试复习 date: 2020-08-24 09:01:09 tags: 参考资料:<图论及其应用> 高等教育出版社 张先迪 / 李正良 仅用于复习参考,公式或多有误 ...

  3. 离散数学 —— 二元关系(图、零图与平凡图、度、握手定理、平行边、简单图与完全图、补图、子图与生成子图、同构、通路与回路、点与边割集、最短路线问题、强弱联通图、邻接矩阵与可达矩阵、欧拉图、平面图等)

    5.1     关系及其表示: 补充一点: 简单路径:无重复边(点不作要求) 基本路径(初级路径):无重复点 一个路径是基本路径,那么必是简单路径 5.2     路与回路: 5.3     图的矩阵 ...

  4. 证明连通简单图是哈密顿图

    定理 对于v阶无向简单图,如果对于图中任意两点的度数之和都大于等于顶点数,那么该图就是哈密顿图

  5. 可简单图化算法(Havel算法)

    算法分析(推理过程) 首先,我们很容易通过握手定理(所以点的度数加起来是偶数)知道,对应的度序列是否可图化. 在确定了可图化之后.但是担心会出现不可简单图化的情况. 我们只需要对于这种可能进行讨论就好 ...

  6. hdu 2454 Degree Sequence of Graph G(可简单图化判定)

    传送门 •Havel-Hakimi定理: 给定一个非负整数序列{d1,d2,...dn},若存在一个无向图使得图中各点的度与此序列一一对应,则称此序列可图化. 进一步,若图为简单图,则称此序列可简单图 ...

  7. 一张图带你看完图论第一章(包含定义、定理、公式、推导证明和例题)

    1.1 图的基本描述 几种特殊图 有限图 复合图 简单图(无环无重边) 完全图   Kn 边数最多的简单图             同构下 唯一             边数Cn2=n(n-1)/2 ...

  8. 扒一扒那些叫欧拉的定理们(三)——简单多面体欧拉定理的抽象形式

    早点关注我,精彩不迷路! 在前面的文章中,我们介绍和证明了简单多面体欧拉定理,相关内容请戳: 扒一扒那些叫欧拉的定理们(二)--简单多面体欧拉定理的证明 扒一扒那些叫欧拉的定理们(一)--基本介绍和简 ...

  9. [matlab]havel定理证明(笔记)

    [matlab]havel定理证明 是否可以由度序列生成简单图是图论中一个重要的内容. havel定理是解决这一问题的重要方法. havel定理证明 问题引出 简单图化问题 简单图 简单图即是指图上不 ...

最新文章

  1. python cmdb资产_SuperCMDB - 资产管理+跳板审计
  2. 去除Office 2010的右键“共享文件夹同步”菜单
  3. webpack前言:前端模块系统的演进
  4. token验证_如何利用 C# 爬取带 Token 验证的网站数据?
  5. 路由器setup模式
  6. 【跃迁之路】【590天】程序员高效学习方法论探索系列(实验阶段347-2018.09.18)...
  7. 如何让计算机桌面字体变大,如何把字体放大 如何更改桌面与网页字体大小
  8. python list 元素位置,怎么查找python列表中元素的位置
  9. 使用c++filt命令还原C++编译后的函数名
  10. 想当程序员吗?这11所大学计算机专业堪称国内顶级,高考考生千万不要错过
  11. 2021厦大计算机考研炸了,厦门大学2021年硕士研究生复试名单
  12. mp4视频在flash中边下载边播放
  13. Windows管理用户账号
  14. urllib库爬取拍信创意图片(post请求)json传参
  15. RK3568-ANDROID11-降频DDR
  16. 一年中所有节日的排列顺序_【一年中的节日按时间顺序】时间顺序的春节风俗...
  17. 谁说MAC原生无法玩游戏---START-腾讯云游戏-开启MAC,低配WIN以及TV玩网游新时代
  18. Python测试习题
  19. RabbitMQ:消费者和生产者。
  20. 在Vmware15虚拟机工具上安装NeoKylin操作系统

热门文章

  1. 刷水~~~~~~~~~~~
  2. vue学习笔记(一) ---- vue指令(过滤器)
  3. STM32 TIM1PWM波输出
  4. 运用图像处理解决基于MRI的脑肿瘤图像分割问题
  5. 查询,珍爱网ID,百合网ID,世纪佳缘ID,有缘网ID
  6. oracle 如何查看监听,[转载]查看oracle监听器的状态及打开监听器服务
  7. k-means像素聚类
  8. 【脑电数据处理】electrophysiology and EEG(AP\LFP\ECoG\EEG)
  9. 词云中去重复的词_手把手教你挖掘蓝海词,打造爆款标题!
  10. 关于人工智能企业商标退化及商标保护