Warshell算法实现
离散数学中有一种求传递递包的算法及求一个矩阵的传递递包,具体算法是:
首先用一个k控制次数
如果存在一个e[ i ][ k]==1; 使得e[ k ] [ j ]=1; 我们就可以把矩阵在原来的基础上所对应的
e[ i ][ j ]=1
具体代码如下
package com.company;public class Test {static int[][] e = {{0, 1, 1, 0},{0, 0, 0, 0},{0, 1, 0, 1},{1, 0, 1, 0}};public static void main(String[] args) {Warshell();for (int i = 0; i < 4; i++) {for (int j = 0; j < 4; j++) {System.out.print(e[i][j] + " ");}System.out.println();}}public static void Warshell() {for (int k = 0; k < 4; k++) {for (int i = 0; i < 4; i++) {for (int j = 0; j < 4; j++) {if (e[i][j] != 0) {e[i][j] = 1;} else if (e[i][k] != 0 && e[k][j] != 0) {e[i][j] = 1;}}}}}
}
运行结果如下
Warshell算法实现相关推荐
- 动态规划在求解传递闭包问题中的应用(JAVA)--Warshell算法
动态规划在求解传递闭包问题中的应用: 传递闭包:对于n个顶点有向图来说,如果第i个顶点到第j个顶点之间存在一条有效的有向路径(即长度大于0的路径),那么T(i, j) = 1,否则T(i, j) = ...
- 动态规划在求解全源最短路径中的应用(JAVA)--Floyd算法
参考图论算法(二)-最短路径的Dijkstra [ 单源 ] 和Floyd[ 多源 ] 解法(JAVA ) 这种算法也叫Floyd-Warshell算法,虽然和Warshell算法名字相近,算法思想也 ...
- matlab 连通分支,(完整版)图的连通性判断matlab实验报告
实验三:图的连通性判断 一.实验目的 用计算机语言编写图的连通性判断算法,可输入图的邻接矩阵,判断图是否连通以及确定连通分支的个数,掌握Warshell 算法或矩阵幂算法的实现方法. 二.实验原理 1 ...
- 离散数学-传递闭包的代码计算
文章目录 简单解释一下传递闭包 例题 手算 代码实现 完整代码与运行结果展示 代码讲解 第一步-获得关系矩阵 第二步-根据Warshell算法计算得到传递闭包 简单解释一下传递闭包 传递闭包.即在数学 ...
- MATLAB仿真节点个数和节点通信半径与网络连通率的关系,WSN实验
判断连通的方法 1.不同节点数n,连通率(y轴)和连通半径(x轴)的关系. function函数: function [rate_1]=liantong(jiedian) rate_1 = zeros ...
- 【WSN】基于COMPOW协议下的网络连通率和覆盖率附matlab代码
1 简介 COMPOW (COMMON POWER)协议是一种简单的将功率控制与路由协议相结合的解决方案,其基本思想是:所有的传感器节点使用一致的发射功率,在保证网络连通的前提下将功率最小化.COMP ...
- 集合论编程练习 | C++ | 离散数学
题目一.求关系的传递闭包 输入 一次输入一个关系矩阵,每一行两个相邻元素之间用一个空格隔开,输入元素的行与列分别对应关系矩阵的行与列.关系的基数小于12. 输出 输出该关系的传递闭包所对应的关系矩阵. ...
- golang通过RSA算法生成token,go从配置文件中注入密钥文件,go从文件中读取密钥文件,go RSA算法下token生成与解析;go java token共用
RSA算法 token生成与解析 本文演示两种方式,一种是把密钥文件放在配置文件中,一种是把密钥文件本身放入项目或者容器中. 下面两种的区别在于私钥公钥的初始化, init方法,需要哪种取哪种. 通过 ...
- 通用解题法——回溯算法(理解+练习)
积累算法经验,积累解题方法--回溯算法,你必须要掌握的解题方法! 什么是回溯算法呢? 回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就&quo ...
最新文章
- 最近的生活[发点牢骚]
- python使用教程pandas-Python 数据处理库 pandas 入门教程基本操作
- 设计微服务架构需要掌握的基础知识
- 『操作系统』 进程的描述与控制 Part 1 前驱图与程序执行
- java多线程-生产者消费者模式
- vue routes路由
- 手趣以“全网通址”深耕移动商务 帮助企业厚积而薄发
- 利用FolderSync实现本地FTP备份同步
- 卫星与太阳的方位角与交会角
- 网络编程——实验一:基于TCPUDP的网络文件服务
- 2021触摸精灵之问道脚本教学
- 2021美赛C题解题思路(Confirming the Buzz about Hornets)
- 解决Ubuntu18.04无法安装旧版本gfortran4.6
- AutoCAD二次开发规则重定义
- windows 10 添加鼠标右键快捷应用
- 微信小程序 mark用法
- 两个字符串中最长公共单词 C语言
- 【CV系列】扫描线算法区域填充
- 悦刻打假再添战果 协助深圳警方捣毁华强北一售假窝点
- 语音识别中Chain Model的原理和实践