已知总图的边和子图顶点,判断子图连通性

判断子图连通性

基本概念

从总图中获得子图的边

判断子图连通性

基本概念

  • 图:顶点+边
  • G = { V, E }

从总图中读取子图边

  • 输入:总图的边,子图顶点
  • 输出:子图的边
  • 思路: 将txt中数据读入内存进行处理。
    定义边的数据类型为
std::vector<std::pair<int, int>> edges;

定义顶点的数据类型为

vector<int> image_ids;

从txt中读取顶点放入顶点数据类型。 边连接了两个顶点,在txt文件中读取一行的两个数据放入边的数据类型。难点在于如何将一行的两个数据放入pair中。这里将边分成了两个txt文件,读取txt文件内容分别放入pair中。

  1. 使用pythonedge.txt分为edge1.txtedge2.txt
import codecs

write = './Building/Buildingedges1_2.txt'
f = codecs.open('./Building/Buildingedges1.txt', mode = 'r', encoding = 'utf-8')

line = f.readline()

list1 = []

while line:
    a = line.split()
    b = a[1:2]
    list1.append(b)
    line = f.readline()
f.close()

#写入txt
with open(write, "a") as fw:
    for i in range(len(list1)):
        fw.writelines(list1[i])
        fw.writelines('\n') #分行保存显示
fw.close()

边生成了两个txt文件
边
在这里插入图片描述

2.从txt中读取边放入边的数据类型

	// 读取边放入pair
	// 将边的顶点分成两个txt文件来读取
	std::vector<std::pair<int, int>> edges;
	string v1;
	string v2;
	ifstream edge1("Building/Buildingedges1_1.txt");
	ifstream edge2("Building/Buildingedges1_2.txt");
	regex pat_regex("[[:digit:]]+")
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值