Floyd Warshall 使用邻接表

2024-02-08

是否可以使用邻接表对 Floyd Warshall 进行编码?我必须处理文本文件中的一百万个顶点,因此邻接矩阵不是解决方案。已有可用的实施吗?请帮忙。


您不能将 Floyd Warshall 与邻接列表一起使用,因为当它工作时,它会产生新的边。

例子 :

首先,您的图有 2 条边( 1-2、2-3 )。所以你初始化邻接矩阵:

调整[1][2] = 1; (表示边缘在 1 和 2 之间)

调整[2][3] = 1; (表示边缘在 3 和 2 之间)

adj[1][3] = +oo; (表示 1 和 3 之间没有边)

当 FW 工作时,将添加边 1-3,因为 adj[1][2] + adj[2][3] adj[1][3] = 2 (意味着有1 和 3 之间的边);

我不知道图中有多少条边以及要解决的时间限制,但如果您需要计算图中所有对之间的最短路径,您可以执行 |V|优先级队列的 Dijkstra 时间复杂度为 |V| * max( |V|log|V| , |E| ) 优于 Floyd Warshall 的 |V|^3。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Floyd Warshall 使用邻接表 的相关文章

  • Keytool 应用程序在哪里?

    我需要在android中使用mapview控件 但我似乎不明白如何运行keytool 是用eclipse安装的吗 我好像找不到下载链接 Thanks keytool http docs oracle com javase 7 docs te
  • 具有更高可见性的重写方法是良好的实践吗?

    回答这个问题 如何使用 GUI 使用 PaintComponent 初始化 GUI 然后添加基于鼠标的 GUI https stackoverflow com questions 21336141 how to gui using pain
  • 使用 GWT CellTableBuilder 构建树表

    Is it possible to build a tree table like this http www sencha com examples ExamplePlace basictreegrid with the new Cell
  • “_加载小部件时出现问题”消息

    加载小部件时 如果找不到资源或其他内容 则会显示 加载小部件时出现问题 就这样 惊人的 此消息保留在主屏幕上 甚至没有说明加载时遇到问题的小部件 我通过反复试验弄清楚了这一点 但我想知道发生这种情况时是否有任何地方可以找到错误消息 Andr
  • eclipse中导入项目文件夹图标

    我在 Eclipse 工作区中新导入的 Maven 项目有J and M项目文件夹顶部的图标 项目和包资源管理器 而其他导入的 Maven 项目只有一个J icon 有人可以解释其中的区别吗 该项目有J装饰器被称为 Java 项目和具有M装
  • Condition 接口中的 signalAll 与对象中的 notificationAll

    1 昨天我才问过这个问题条件与等待通知机制 https stackoverflow com questions 10395571 condition vs wait notify mechanism 2 我想编辑相同的内容并在我的问题中添加
  • 内存一致性 - Java 中的happens-before关系[重复]

    这个问题在这里已经有答案了 在阅读有关内存一致性错误的 Java 文档时 我发现与创建 发生 之前 关系的两个操作相关的点 当语句调用时Thread start 每个具有 与该语句发生之前的关系也有一个 与 new 执行的每个语句之间发生的
  • 具有共享依赖项的多模块项目的 Gradle 配置

    使用 gradle 制作第一个项目 所以我研究了 spring gradle hibernate 项目如何组织 gradle 文件 并开始制作自己的项目 但是 找不到错误 为什么我的配置不起作用 子项目无法解决依赖关系 所以项目树 Root
  • Git 无法识别重命名和修改的包文件

    我有一个名为的java文件package old myfile java 我已经通过 git 提交了这个文件 然后我将我的包重命名为new所以我的文件在package new myfile java 我现在想将此文件重命名 和内容更改 提交
  • 无法加载或查找主类,可以在命令行中使用,但不能在 IDE 中使用[重复]

    这个问题在这里已经有答案了 在将其标记为重复之前 请先听我说完 我正在尝试使用 gradle 导入一个 java 项目 功能齐全 适用于所有其他笔记本电脑 没有问题 我的项目 100 正常运行 适用于所有其他笔记本电脑 当我的笔记本电脑被重
  • 获取给定类文件的目录路径

    我遇到的代码尝试从类本身的 class 文件所在的同一目录中读取一些配置文件 File configFiles new File this getClass getResource getPath listFiles new Filenam
  • Dispatcher-servlet 无法映射到 websocket 请求

    我正在开发一个以Spring为主要框架的Java web应用程序 特别使用Spring core Spring mvc Spring security Spring data Spring websocket 像这样在 Spring 上下文
  • Espresso 和 Proguard 的 Java.lang.NoClassDefFoundError

    我对 Espresso 不太有经验 但我终于成功地运行了它 我有一个应用程序需要通过 Proguard 缩小才能处于 56K 方法之下 该应用程序以 3 秒的动画开始 因此我需要等到该动画结束才能继续 这就是我尝试用该方法做的事情waitF
  • 为什么java中的for-each循环中需要声明变量

    for 每个循环的通常形式是这样的 for Foo bar bars bar doThings 但如果我想保留 bar 直到循环结束 我可以not使用 foreach 循环 Foo bar null Syntax error on toke
  • 如何在 Quartz 调度程序中每 25 秒运行一次?

    我正在使用 Java 的 Quartz Scheduling API 你能帮我使用 cron 表达式每 25 秒运行一次吗 这只是一个延迟 它不必总是从第 0 秒开始 例如 序列如下 0 00 0 25 0 50 1 15 1 40 2 0
  • 挂钩 Eclipse 构建过程吗?

    我希望在 Eclipse 中按下构建按钮时能够运行一个简单的 Java 程序 目前 当我单击 构建 时 它会运行一些 JRebel 日志记录代码 我有一个程序可以解析 JRebel 日志文件并将统计信息存储在数据库中 是否可以编写一个插件或
  • 哪个集合更适合存储多维数组中的数据?

    我有一个multi dimensional array of string 我愿意将其转换为某种集合类型 以便我可以根据自己的意愿添加 删除和插入元素 在数组中 我无法删除特定位置的元素 我需要这样的集合 我可以在其中删除特定位置的数据 也
  • Android - 9 补丁

    我正在尝试使用 9 块图片创建一个新的微调器背景 我尝试了很多方法来获得完美的图像 但都失败了 s Here is my 9 patch 当我用Draw 9 patch模拟时 内容看起来不错 但是带有箭头的部分没有显示 或者当它显示时 这部
  • Hibernate 和可序列化实体

    有谁知道是否有一个框架能够从实体类中剥离 Hibernate 集合以使它们可序列化 我查看了 BeanLib 但它似乎只进行实体的深层复制 而不允许我为实体类中的集合类型指定实现映射 BeanLib 目前不适用于 Hibernate 3 5
  • Android 和 Java 中绘制椭圆的区别

    在Java中由于某种原因Ellipse2D Double使用参数 height width x y 当我创建一个RectF在Android中参数是 left top right bottom 所以我对适应差异有点困惑 如果在 Java 中创

随机推荐

  • Codeigniter (PHP) 中的注销问题

    我将 loginuserid 存储在 session 中并在 logout 时销毁 session 登录和注销工作正常 但我的问题是当用户注销并且我们按下后退按钮时 它仍然能够打开访问的页面 即使他实际上已注销 当我们刷新页面时 用户进入登
  • 如何让 sed 只更改每个字母的所有实例一次?

    到目前为止 代码只更改了第一个字母 如果我进行突破 那么它会多次更改字母的每个实例 这很糟糕 我只是尝试使用 sed 进行凯撒密码 我意识到我可以使用 tr 来执行文本转换 但我更愿意坚持使用 sed echo What number do
  • Keycloak 实现重置密码流程与忘记密码流程相同

    我遇到了 Keycloak 的问题 当用户单击 忘记密码 按钮时 系统会要求他输入基本详细信息 输入详细信息后 用户会收到一封包含更改密码链接的邮件 用户更改密码 并被重定向到应用程序的登录页面 用户帐户被锁定 管理员使用应用程序解锁帐户
  • 传递哈希值而不是方法参数[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我发现在 Ruby 以及一般来说动态类型语言 中 一种非常常见的做法是传递哈希值 而不是声明具体的方法参数 例如 不要声明带有参数的方法并像这样
  • 合并将一个发布商变成另一个发布商

    我使用 OAuth 框架 它异步创建经过身份验证的请求 如下所示 OAuthSession current makeAuthenticatedRequest request myURLRequest result Result
  • 将带有空值的 csv 文件导入 phpmyadmin

    当我将 csv 文件导入 MySQL phpmyadmin 时 对于文件中未指定但默认值为 null 的所有整数值 会出现一条错误消息 1366 Incorrect integer value for column id at row 1
  • 如果删除的单元仍在其他单元中使用,那么如果我清理我的使用条款,会有什么不同吗?

    就我个人而言 我喜欢它 如果我的uses子句尽可能小 但在许多应用程序中 真正大的单元 就膨胀的可执行文件而言 就像Forms or VirtualTrees无论如何 至少另一个单位需要 所以 如果我清洁我的身体 会有什么不同吗 uses即
  • 在 R 中添加带有颜色和范围的图例

    以下示例代码根据以下值生成彩色点图a a lt sample 1 100 rbPal lt colorRampPalette c red blue b lt rbPal 10 as numeric cut a breaks 10 plot
  • python 的startswith 是如何工作的?

    我无法理解该行为str startswith https docs python org 3 library stdtypes html str startswith method 如果我执行 hello startswith 它返回 Tr
  • 线程会提高性能吗?

    我有一个这样设置的程序 它是一个 Net Framework 4 控制台应用程序 该程序用于从每台服务器上的每个日志文件 上周 收集 sc 字节和 cs 字节 该程序已完成 但运行时间很长 foreach string server in
  • 在 Rails 3 中编写自定义验证器

    我正在尝试编写一个自定义验证器来检查输入到文本字段中的单词数 我试图效仿 Railscasts 第 211 集中的例子 http railscasts com episodes 211 validations in rails 3 http
  • CSS margin 和 padding 简写属性的顺序助记符

    我永远记不起在一个声明中设置边距或填充的速记属性的顺序 那是 margin top 2px margin bottom 4px margin left 3px margin right 8px 可以写成 margin 2px 8px 4px
  • 如何在OpenCV中将某个RGB值的所有像素替换为另一个RGB值

    我需要能够用 OpenCV 中的另一种颜色替换具有特定 RGB 值的所有像素 我尝试了一些解决方案 但没有一个对我有用 实现这一目标的最佳方法是什么 太长了 使用 Numpy 将所有绿色像素设为白色 import numpy as np p
  • FXCop 自定义规则未显示在规则集中

    我按照此处的步骤创建了一个新的自定义规则并将其添加到 VSStudio 2013 中的规则集中 http blog tatham oddie com au 2010 01 06 custom code analysis rules in v
  • 在 Word 选项加载项对话框中设置发布者

    我使用 Visual Studio 2010 RTM 为 Microsoft Word 2010 Beta 制作了一个插件 当我查看 查看和管理 Microsoft Office 加载项 时 发布者显示为 无 使用软件发布者证书进行代码签名
  • jquery更改事件回调

    如何在之后调用函数一次change 活动完成了吗 例如 像这样 我知道 jQuery 默认没有回调方法 element change function do something on change milestonesSelect mult
  • 你能结合 docker 的单独构建吗?

    我正在使用circleci来部署应用程序 我部署到amd和arm架构 所以我的构建是多架构的 我一直在使用docker buildx 借助 Circleci 的新手臂支持 我能够将这个过程的时间从使用 quemu 的有时 3 小时缩短到大约
  • SQL Server 版本控制与 git 集成?

    我有一个 ERP 系统 由我的团队负责维护 然而最近我们似乎忘记了谁在改变什么 我们需要一个解决方案来控制这些变化 我们正在研究 GIT 的企业版 因为我们所有的软件开发和 Web 开发都可以与它完美配合 更不用说我已经有一些 GIT 经验
  • 获取所有 css 样式属性的访问权限?

    我想通过 JavaScript 访问所有 CSS 属性 不仅针对特定选择器或元素 而且针对所有属性 我想遍历所有属性 style收藏 我怎样才能做到这一点 您可以使用CSSStyleDeclaration object CSSStyleDe
  • Floyd Warshall 使用邻接表

    是否可以使用邻接表对 Floyd Warshall 进行编码 我必须处理文本文件中的一百万个顶点 因此邻接矩阵不是解决方案 已有可用的实施吗 请帮忙 您不能将 Floyd Warshall 与邻接列表一起使用 因为当它工作时 它会产生新的边