离散数学_十章-图 ( 3 ):由旧图构造新图

news2024/11/26 12:48:14

📷10.3 由旧图构造新图

    • 概念
    • 1. 子图
    • 2. 真子图
    • 3. 导出的子图
  • 旧图构造新图的方法
    • 1. 删除或增加图中的边
    • 2. 边的收缩
    • 3. 删除顶点

有时解决问题只需要图的一部分。
比如我们现在只关心大型计算机网络中涉及济南,广州,深圳的计算机中心,所以我们可以忽略其他的计算机中心,把济南,广州,深圳的计算机中心从全局 “剥离” 出来~

概念

1. 子图

子图定义:当从图中删除了边和顶点,不删除所保留边的端点时,就得到一个更小的图,这样的图称为原图的子图。

在这里插入图片描述

2. 真子图

真子图定义:图 G=(V,E) 的子图是图 H = (W, F),其中W⊆V 且 F⊆E 。若 H≠G,则称图G的子图H是G的真子图。

(子图和真子图 类似于 子集和真子集)

→ 因此,如果已知一个图的顶点集合,我们可以由图中的顶点和连接这些顶点的边得到这个图的子图。

3. 导出的子图

导出的子图:令图 G =(V , E) 是一个简单图,图 H = (W , F)是由顶点集V的子集W 导出的子图,其中边集F 包含E中的一条边 iff 这条边的两个端点都在W中

(简单图:没有自回路、没有多重边的图 / 不是伪图的图)

例题:
图一中右图所示的是K5的一个子图,如果我们在右图中增加一条连接e和c的边,就得到一个由 W = { a, b, c, e } 导出的子图

在这里插入图片描述

旧图构造新图的方法

1. 删除或增加图中的边

删除边

已知图G = (V,E),边e∈E,我们可以通过删除边e得到图G的一个子图。所得到的子图,记作 G - e和图G具有相同的顶点集V。它的边集是E - e。

所以,G - e = ( V, E - { e } )

类似地,若 E 是 E 的子集,我们可以通过从图中删除 E 中的边得到图G的子图。所得到的子图和图G具有相同的顶点集V。它的边集是E - E

增加边
我们可以通过在图中增加一条连接图G中已有的两个顶点的边e得到一个新的更大的图。我们把在图G中增加一条新边,该边连接原图中两个原本不相关联的顶点,所得到的新图记作G + e

所以G + e = ( V, E U { e } )

2. 边的收缩

通俗来说就是将边两端的顶点 “合成” 为一个点

当我们从图中删除一条边后,我们不希望将该边的端点作为独立的顶点保留在所得到的子图中。在这种情况下,我们进行边的收缩

3. 删除顶点

当我们从图G = (V,E) 删除一个顶点v以及所有与它相关联的边时,就得到图G的一个子图,记作G - v。注意,G - v = (V - v,E’)。

其中 E’ 是G中不与v相关联的边的集合。

类似地,若V’是V的子集,则图 G - V 是子图 (V - V’,E’),其中E’是G中不与V’中的顶点相关联的边的集合。

例题:

已知无向图G:
在这里插入图片描述
求在G上进行不同的操作得到的图:

a) G - { b,c },在图G中删除边{b,c}构造的图。
b) G + { e,d },在图G中增加边{e,d}构造的图。

c) G的收缩图,在图G中,用新顶点 f 替换边{b,c},使用新边{a,f}、{f,d}和{f,e}替换边{c,d}、{a,b}、 {b,e}和{c,e}构造的图。

d) G - c,在图G中删除顶点c 以及边{b,c}、{c,d}和{c,e}构造的图。

🔴解:

a)
在这里插入图片描述

b)
在这里插入图片描述

c)
在这里插入图片描述

d)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/578203.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习c语言中的几道习题(小有难度)!

有兴趣的朋友可以看着题目自己做做,最后在和答案对比!相信能力会有所提升的。我现在只是刚刚开始学习c语言,如果有什么说的不对的地方,网路过的大佬,及时予以指正。多谢! 1、函数判断闰年 实现函数判断yea…

chatgpt赋能python:Python行太长如何处理?

Python行太长如何处理? 介绍 Python 是一门强大的编程语言,易于学习和使用。它也因其可读性和简洁性而受到广泛赞誉。然而,在实际编写时,往往遇到了行太长的情况。 当一行代码在编辑器中撑满了整个屏幕,或者末尾的字…

【Redis入门篇】| Redis的Java客户端

目录 一: Redis的Java客户端 1. Jedis快速入门 2. Jedis连接池 3. SpringDataRedis快速入门 4. RedisSerializer配置 5. StringRedisTemplate 图书推荐 一: Redis的Java客户端 在Redis官网中提供了各种语言的客户端,地址:…

chatgpt赋能python:Python阶乘算法——快速、高效的算法实现!

Python阶乘算法 —— 快速、高效的算法实现! Python作为一门高级编程语言,在众多领域都得到了广泛应用,尤其在算法领域更是拥有着举足轻重的地位。阶乘算法作为计算领域中的一种经典算法,也是Python中不可或缺的一部分。 什么是…

尚硅谷大数据hadoop教程_HDFS

P40 hdfs产生背景和定义 p41 优缺点 p42 组成 p43 文件块大小 p 44 45 shell命令 p46 api环境准备

单链表—C语言实现数据结构

本期带大家一起用C语言实现单链表🌈🌈🌈 文章目录 一、链表的概念🌎二、链表中数据元素的构成🌎 🌍三、链表的结构🌎 🌍 🌏四、 单链表的实现✅✅二、接口的实现✅✅1.单…

SAP-MM-采购申请-价值特性

采购申请审批在维护价值特性时要注意是抬头价值还是行价值,要确定选择哪个,配置时对应配置。 1、创建价值特性CT04 字段名称:CEBAN-GSWRT,和CEBAN-GFWRT 抬头总价值:CEBAN-GFWRT;如果选择的是抬头审批&am…

WPF界面设计

目录 1.设计一个优美的注册界面1.实现效果2.代码展示 2.简易登录按钮设计1.实现效果2.代码展示 3.设计一个优美的注册登录界面(连接数据库)1.实现效果2.代码展示 4.设计一个简单的在线教育系统界面1.实现效果2.代码展示 5. 设计一个Dashboard1.实现效果2…

linux线程创建等待及退出总结

线程操作 线程操作分线程的创建&#xff0c;退出&#xff0c;等待 3 种 1. 线程创建 #include <pthread.h> int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void *), void *restrict arg); // 返回&#xff1…

chatgpt赋能python:Python中的逆序数

Python中的逆序数 介绍逆序数 在数学中&#xff0c;逆序数指的是一个序列中逆序对的个数。逆序对指一个序列中的两个元素&#xff0c;其中较大的元素在前而较小的元素在后。例如&#xff0c;序列 [2, 4, 1, 3] 中逆序对的个数是 2&#xff1a;(2,1) 和 (4,1)。 逆序数常用于…

chatgpt赋能python:Python逆序遍历-解决问题的神奇方式

Python逆序遍历 - 解决问题的神奇方式 Python是一种简单易学的编程语言&#xff0c;依靠其强大的功能和可扩展性&#xff0c;已成为数据科学、人工智能和Web开发的首选语言之一。Python的核心优点之一是其非常方便的列表操作&#xff0c;而逆序遍历列表是Python的又一个实用而…

chatgpt赋能python:Python虚拟环境移植:为何以及如何

Python虚拟环境移植&#xff1a;为何以及如何 在Python项目开发过程中&#xff0c;管理项目依赖关系是一个很重要的问题。一个有效的解决方案是使用Python虚拟环境。虚拟环境是Python的一个工具&#xff0c;允许您在隔离的环境中管理Python包和依赖&#xff0c;从而避免不同开…

期末复习总结【MySQL】五种约束类型, 主键和外键的使用方式(重点)

文章目录 前言一、约束类型二、NOT NULL三、UNIQUE四、DEFAULT五、PRIMARY KEY(重点)1, 自增主键 六、FOREIGN KEY (重点)1, 插入数据2, 删除数据3, 关于外键约束下删除数据的思考 总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: &#x1f4d5;…

chatgpt赋能python:Python词法分析:理解语言的起点

Python词法分析&#xff1a;理解语言的起点 在计算机科学中&#xff0c;词法分析&#xff08;也称为词法分析器&#xff09;是解析编程语言时的重要步骤之一。词法分析器将程序代码转换为由单词组成的序列&#xff08;称为标记或词法单元&#xff09;&#xff0c;为编译器和解…

chatgpt赋能python:Python转变为大写:学习如何使用Python中的str.upper()

Python 转变为大写&#xff1a;学习如何使用 Python 中的 str.upper() 作为一名有10年python编程经验的工程师&#xff0c;我可以肯定地说&#xff0c;Python 作为一门流行的编程语言&#xff0c;在全球范围内得到了广泛的应用。除了成为数据科学和机器学习的首选语言之外&…

设置ssh免密码登陆linux的配置步骤

概述 生成私钥文件 在客户端终端下输入以下命令 ssh-keygen -t rsa每次执行 ssh-keygen -t rsa 产生的私钥文件都会不同 如果文件"~/.ssh/id_rsa"存在&#xff0c;会提示是否覆盖该文件&#xff0c;此时可选择"n"不覆盖该文件而使用已有的id_rsa文件 如…

钉钉群通过短信转发器接收手机短信消息

1.短信转发器官网下载 下载地址 首发地址&#xff1a;https://github.com/pppscn/SmsForwarder/releases国内镜像&#xff1a;https://gitee.com/pp/SmsForwarder/releases网盘下载&#xff1a;https://wws.lanzoui.com/b025yl86h 访问密码&#xff1a;pppscn 使用文档 首发…

计算机网络 - 网络层的控制平面

Introduction 控制平面设计很多路由的算法, 然后计算出路由表给数据平面转发跟路由的, 传统方式的控制平面是每一个路由器都有一个控制平面, SDN方式的话通常是集中的remote管理, 一个控制平面控制多个本地代理CA - (Control Agent) 路由选择算法 路由route的概念 按照某种…

chatgpt赋能python:Python词性分析:一步步了解自然语言处理技术

Python词性分析&#xff1a;一步步了解自然语言处理技术 Python是一种高级编程语言&#xff0c;拥有广泛的应用领域。自然语言处理技术是其中一个重要的领域&#xff0c;它包含了词性分析、命名实体识别、句法分析等多项任务。词性分析是自然语言处理中的基本任务之一&#xf…

chatgpt赋能python:Python请求头——让你的网络请求更有效率

Python请求头——让你的网络请求更有效率 网络请求是现代应用程序的核心。但是&#xff0c;如果你不了解Python请求头的概念和用途&#xff0c;那么你可能会面临一些棘手的问题。在本文中&#xff0c;我们将深入探讨Python请求头&#xff0c;了解其作用、语法和最佳实践。 什…