有向图的传递闭包

根据关系图非常简单的求出三种关系闭包(自反闭包、对称闭包、传递闭包)附练习题 目录想说的话自反闭包对称闭包传递闭包练习题 想说的话 完全不废话,谁都能懂 φ(>ω<*) 只关注如何求关系闭包,不讲原理,因为懒(不是) 方便起见,就以下图为例。关系为 R={⟨1,1⟩,⟨1,2⟩,⟨3,1⟩}R=\lbrace\langle1,1\rangle,\langle1,2\rangle,\langle3,1\rangle\rbrace R={⟨1,1⟩,⟨1,2⟩,⟨3,1⟩} 自反闭包 将没有环的结点加上环。 例题中结点111有环,结点2,32,32,3无环,因此将结点 阅读详情

发布一个k8s部署视频:https://edu.youkuaiyun.com/course/detail/26967

课程内容:各种k8s部署方式。包括minikube部署,kubeadm部署,kubeasz部署,rancher部署,k3s部署。包括开发测试环境部署k8s,和生产环境部署k8s。

腾讯课堂连接地址https://ke.qq.com/course/478827?taid=4373109931462251&tuin=ba64518

第二个视频发布  https://edu.youkuaiyun.com/course/detail/27109

腾讯课堂连接地址https://ke.qq.com/course/484107?tuin=ba64518

介绍主要的k8s资源的使用配置和命令。包括configmap,pod,service,replicaset,namespace,deployment,daemonset,ingress,pv,pvc,sc,role,rolebinding,clusterrole,clusterrolebinding,secret,serviceaccount,statefulset,job,cronjob,podDisruptionbudget,podSecurityPolicy,networkPolicy,resourceQuota,limitrange,endpoint,event,conponentstatus,node,apiservice,controllerRevision等。

第三个视频发布:https://edu.youkuaiyun.com/course/detail/27574

详细介绍helm命令,学习helm chart语法,编写helm chart。深入分析各项目源码,学习编写helm插件
————————————————------------------------------------------------------------------------------------------------------------------

 

package com.data.struct;

import java.util.Random;

public class TransitiveClosure {
	private Node [][]graphic;
	private Node [][][]f;
	public TransitiveClosure(int v,int e){
		graphic=new Node[v][v];
		for(int i=0;i<e;i++){
			int v1=new Random().nextInt(v);
			int v2=new Random().nextInt(v);
			Node node=new Node();
			node.w=1;
			node.start=v1;
			node.end=v2;
			graphic[v1][v2]=node;
		}
		for(int i=0;i<v;i++){
			if(graphic[i][i]==null){
				Node node=new Node();
				node.w=1;
				node.start=i;
				node.end=i;
				graphic[i][i]=node;
			}else{
				graphic[i][i].w=1;
			}
		}
		for(int i=0;i<v;i++){
			for(int j=0;j<v;j++){
				if(graphic[i][j]==null){
					Node node=new Node();
					node.w=0;
					node.start=i;
					node.end=j;
					graphic[i][j]=node;
				}
			}
		}
		f=new Node[graphic.length][graphic.length][graphic.length];
		
	}
	public Node[][] transitiveClosure(){
		f[0]=graphic;
		for(int k=1;k<graphic.length;k++){
			f[k]=new Node[graphic.length][graphic.length];
			for(int i=0;i<graphic.length;i++){
				for(int j=0;j<graphic.length;j++){
					Node node=new Node();
					node.start=i;
					node.end=j;
					boolean a=(f[k-1][i][j].w==1?true:false);
					boolean b=(f[k-1][i][k].w==1?true:false);
					boolean c=(f[k-1][k][j].w==1?true:false);
					node.w=a||b&&c?1:0;
					f[k][i][j]=node;
				}
			}
		}
		return f[graphic.length-1];
	}
	
	public void print(){
		System.out.println("origranal:");
		for(int i=0;i<graphic.length;i++){
			for(int j=0;j<graphic.length;j++){
				if(graphic[i][j]!=null){
					System.out.print(graphic[i][j].w+" ");
				}else{
					System.out.print(" "+" ");
				}
			}
			System.out.println();
		}
		
		Node [][] l=transitiveClosure();
		System.out.println("result:");
		for(int i=0;i<l.length;i++){
			for(int j=0;j<l.length;j++){
				if(l[i][j]!=null){
					System.out.print(l[i][j].w+" ");
				}else{
					System.out.print(" "+" ");
				}
			}
			System.out.println();
		}
		
	}
	private class Node{
		private int w;
		private int start;
		private int end;
	}
	public static void main(String[] args) {
		TransitiveClosure t=new TransitiveClosure(5,5);
		t.print();
	}

}

 

手把手教你排查libstdc++.so.6版本问题:从GLIBCXX缺失到完美解决 本文深入解析Linux系统中常见的GLIBCXX版本缺失问题,以`ImportError: /lib/x86_64-linux-gnu/libstdc++.so.6: version 'GLIBCXX_3.4.29' not found`为例,从动态链接原理入手,提供使用`strings`和`find`命令的诊断方法,并详细对比了四种解决方案的优缺点。文章重点推荐通过设置`LD_LIBRARY_PATH`或更新系统库的安全策略,并最终建议使用Docker容器化技术实现环境依赖的根治与统一管理。 阅读详情

相关推荐

PCIe扫盲(三)

需要特别注意的是,PCIe的Spec中明确规定只有Root有权限发起配置请求(Originate Configuration Requests),也就是说PCIe系统里面的其他设备是不允许去配置其他设备的配置空间的,即peer-to-peer的配置请求是不允许的。当配置请求进行BDF路由的时候,正是依靠这些信息来确定要找的设备的。前面的文章还介绍过,Root和Switch的每一个端口中都包含一个P2P桥,并且知道桥的配置空间头(Configuration Space Header)是Type1型的。

Liuqz2009的专栏 2407

算法导论 第二十五章:有向图的传递闭包

已知一有向图G=,顶点集合V={1,2,...,n},我们可能希望确定对所有顶点对i,j ∈ V,图G中事发后都存在一条从i到 j 的路径。G的传递闭包定义为图,其中:                                                              在Θ(n^3)时间内计算出图的传递闭包的一种方法是对E中每条边赋以权值1,然后运行Floyd-Wars

dllTimes 7953

AXI Timer IP核使用说明

AXI Timer是提供定时技术功能的集成IP核,具有时间生成、事件捕获、产生PWM波以及产生中断的功能,下面具体讲述Timer IP核的使用说明。

weixin_43418104的博客 2489

(原创)有向图的传递闭包问题

Description KJZ的师弟师妹们最近在学习离散数学,于是他决定出一道简单的图论知识考考大家! 在这里他向大家介绍了一个叫做传递闭包的概念。 传递闭包就是,在集合X上的二元关系R的传递闭包是包含R的X上的最小的传递关系。 那么什么事有向图的传递闭包呢? 对于有向图G(V,E)的传递闭包即是G(V,E),其中E{(i,j):图G中包含一条由i到j的路径}。 读到这里的你,如果是一...

weixin_30312563的博客 1040

同物种,不同版本之间的坐标转化

是最常用的工具,如果有可用的链文件,这通常是最便捷的方法。CrossMap是一个功能强大的替代工具,支持多种文件格式和物种。自定义生成链文件适用于没有现成资源的情况,虽然复杂一些,但可以满足特定需求。Ensembl 和 Gramene提供的工具适用于支持的物种,尤其在植物基因组领域可能更具优势。选择合适的方法取决于你正在处理的物种、基因组版本以及现有的资源。

qq_40256654的博客 1853

保姆级教程:在RK3568开发板上手把手配置RMII百兆以太网DTS节点

本文提供了一份详细的RK3568开发板RMII百兆以太网DTS节点配置教程,涵盖基础概念解析、关键参数设置、实际操作步骤及常见问题排查。通过手把手指导,帮助开发者快速完成RK3568开发板的以太网配置,特别适合嵌入式系统开发者参考。

weixin_33686714的博客 137

图解闭包

说到 闭包 ,这是js不得不提的一个特性,很多传统语言都不具备这样的特性,比如JAVA C等等。 之前看书的时候,总是理解不好什么是闭包!下面就通过手绘一张原理图,来理解一下:   首先基本上所有的编程语言都有类似的特性,局部方法可以访问外部父类方法的属性,也就是说,子类或子方法可以访问父类的资源。 &lt;!-- 在正常的脚本中,某个方法可以获取到外部的变量,或...

weixin_33841503的博客 283

基于Python的电商平台商品价格监控与历史价格查询系统

随着电子商务的快速发展,消费者对商品价格透明度的需求日益增长。本文设计并实现了一个基于Python的电商平台商品价格监控与历史价格查询系统,能够自动抓取京东和淘宝商品信息,存储历史价格数据,并通过可视化界面展示价格走势。系统采用最新的异步爬虫技术、反爬虫绕过策略和现代Web框架,实现了高效稳定的数据采集与展示功能。关键词:Python爬虫、价格监控、历史价格、数据可视化、异步爬虫、电商平台实现了京东和淘宝商品信息的异步爬取,采用多种反爬虫策略提高爬取成功率;

2201_76125261的博客 682

有向图的传递闭包实现三种实现(Warshall+DFS+BFS)

一、传递闭包: 定义: 有n个顶点的有向图的传递闭包可以定义为一个n阶布尔矩阵T[n][n],如果i能到j则T[i][j] =1,否则T[i][j] =0 意义: 对于无向图,我们可以通过并查集来实现两个顶点是否有通路的快速查询。但有向图不能有并查集,所以现在可以用传递闭包了(当然无向图也可以用) 通过Floyd-Warshall算法https://blog.youkuaiyun.com/qq_4069105...

qq_40691051的博客 2510

OpenClaw 钉钉和飞书集成方案研究 & OpenClaw 研究分析报告

OpenClaw(原名 Clawdbot,曾用名 Moltbot)是一款开源的个人 AI 智能体,采用"本地优先"设计理念。与传统聊天机器人不同,OpenClaw 具备真正的系统级执行能力,能够实际操作用户的计算机系统,完成各种实际任务。核心优势本地部署:所有数据存储在用户本地设备,隐私零泄露系统级执行:具备完整的系统访问权限,可执行文件操作、命令运行等全渠道交互:支持多种即时通讯平台作为交互界面开源透明:MIT 许可证,代码完全开放,社区驱动开发应用场景个人助理:日程管理、任务提醒、邮件处理。

AI天才研究院 2343

药物吸收仿真软件:Caco-2_(9).Caco-2模型在药物开发中的案例分析

通过以上五个案例,我们可以看到Caco-2模型在药物开发中的重要作用。它不仅能够帮助我们预测药物的肠道吸收情况,还能够用于优化药物配方、评估代谢稳定性、研究药物相互作用以及转运蛋白的影响。这些体外实验和仿真分析的结果为药物的进一步临床研究提供了重要的参考依据,有助于缩短药物开发周期,提高研发效率。

kkchenjj的博客 864

Warshall算法求有向图的传递闭包

1定义是这样给出的,传递闭包:对于任何关系 R,R 的传递闭包总是存在的。传递关系的任何家族的交集也是传递的。进一步的,至少存在一个包含 R 的传递关系,也就是平凡的: X × X。R 传递闭包给出自包含 R 的所有传递关系的交集……其实就是求点与点之间的可达关系,比如1–>4,4–>6,那么1–>6,用warshall算法可以求出有向图的传递闭包 #pragma GCC opt...

嘘...一只bug 1013

手把手教你学SOME/IP「1.0•概述」

本文介绍了SOME/IP协议的基本概念和主要特点。SOME/IP全称为"Scalable service-Oriented MiddlewarE over IP",是一种面向服务的车载嵌入式通信协议,支持远程过程调用、事件通知等功能。文章指出SOME/IP是AUTOSAR标准的一部分,在车载以太网架构中处于应用层位置,负责服务调度和通信封装。协议具有可扩展性强、资源消耗低、兼容性好等优势,能满足汽车电子领域对实时性、可靠性的严格要求。同时,文章也说明了SOME/IP的正确书写规范,并解释

nihaoljq2010的博客 679

Warshall算法-有向图传递闭包

Warshall算法

qq_65213554的博客 2008

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Floyd-Warshall方法求有向图的传递闭包 收藏

有向图G的传递闭包定义为:G*=(V,E*),其中E*={(i,j)}:图G中存在一条从i到j的路径。在floyd-warshall求每对顶点间的最短路径算法中,可以通过O(v^3)的方法求出图的传递闭包。可以位每条边赋以权值1,然后运行Floyd-Wareshall。如果从i    到j存在一条路径,则d(i,j) 一种改进的算法是:由于我们需要的只是判断是否从i到j存在一条通路,所以在Fl

乐吾天 1133

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

【洛谷 B3611】【模板】传递闭包 题解(有向图+邻接矩阵+位集合+传递闭包+位运算)

给定一张点数为n的有向图的邻接矩阵,图中不包含自环,求该有向图的传递闭包。一张图的邻接矩阵定义为一个n×n的矩阵Aaij​n×n​,其中aij​1i到j存在直接连边0i到j没有直接连边​一张图的传递闭包定义为一个n×n的矩阵Bbij​n×n​,其中bij​1i可以直接或间接到达j0i无法直接或间接到达j​。

HEX9CF的技术博客 1125

Floyd-Warshall方法求有向图的传递闭包

有向图G的传递闭包定义为:G*=(V,E*),其中E*={(i,j)}:图G中存在一条从i到j的路径。 在floyd-warshall求每对顶点间的最短路径算法中,可以通过O(v^3)的方法求出图的传递闭包。可以位每条边赋以权值1,然后运行Floyd-Wareshall。如果从i    到j存在一条路径,则d(i,j) 一种改进的算法是:由于我们需要的只是判断是否从i到j存在一条通路,

ClearRiver 's Style 4539

HDU1181【有向图的传递闭包】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1181 题意很简单。 有用并查集做的。我这里用传递闭包做。 有向图的传递闭包采用Floyd思想,可以判断任意两点之间是否有通路。 PS:Floyd思想:对于每一对顶点 u 和 v,看看是否存在一个顶点 w 使得从 u 到 w 再到 v 比已知的路径更短。如果是更新它。 这题代码:#in

Beyyes 1350

动态规划之有向图传递闭包的计算warshall算法图解详

了解动态规划 有向图传递闭包的计算-warshall算法 传递闭包的具体计算过程图解 warshall算法的核心内容 算法的求解过程 伪代码 具体代码实现 #include<bits/stdc++.h> #include<stdio.h> #include<iostream> #include<string.h> using na...

weixin_43342105的博客 3225

Warshall算法-计算有向图的传递闭包

理解 代码 # -*- coding: utf-8 -*- """ Created on Fri May 6 14:22:51 2022 Warshall算法: 用途:计算有向图的传递闭包 复杂度:时间复杂度O(n^3) 算法核心: 如果A[i][j]为0,就将A[i][k]和A[k][i]进行与运算,并将其作为A[i][j] """ import numpy as np def And(a,b): #进行与运算 if a==1 and b==1:

weixin_52116519的博客 673

Floyd有向图的传递闭包-UVA - 247

//有向图的传递闭包 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<vector> #include<set> #include<map> #include<algorithm> using namespace std; vector<string> vt; map<string,int>

From2016cxg 557

hdu 1181 floyd求有向图传递闭包

//floyd求传递闭包#include #include using namespace std;int map[200][200];void floyd(){ for(int k='a'; k {  for(int i='a'; i  { /*  if(i == k)   {    continue;   }*/   for(int j='a'; j   {    map[i][j] =  map[i][j] || (map[i][k] && map[k][j]);   }  } }}int main(

跟acm say goodbye 1911

php redis 传递闭包,有向图传递闭包 - osc_wff1160a的个人空间 - OSCHINA - 中文开源技术交流社区...

[TOC] 有向图的传递闭包是Floyd warshall 算法的一种应用(主要参考算法导论) ###传递闭包的定义对于有向图G(V,E)的传递闭包即是G(V,E*),其中E*{(i,j):图G中包含一条由i到j的路径}。Floyd warshall 传递闭包算法Floyd warshall 代码void floyd_warshall(){int tmp;for(int k = 1; k <...

weixin_39815329的博客 159

Floyd-Warshall算法计算有向图的传递闭包

  Floyd-Warshall算法是用来求解所有结点对最短路径的知名算法,其还有一个重要的用途就是求解有向图的传递闭包,下面就让我来介绍算法导论中关于有向图闭包计算的有关记载吧。 有向图的传递闭包:我们定义图G的传递闭包为图G* = (V,E*);其中E* ={ (i, j) :如果图G中包含一条从结点i到结点j的路径 }。   实际计算传递闭包时我们可以给G中的每条边赋予权重1,然后运行...

weixin_30507269的博客 695
上一篇: 所有节点对最短路径-Floyd-Warshall算法
下一篇: 最大子矩阵
hxpjava1
博客等级 码龄19年 1365粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hxpjava1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值