# 图最短路径计算器（Dijkstra 手算辅助）

Dijkstra 最短路径的手算辅助工具：输入 1–30 条边（每行：起点、终点、权重）与起点/终点，默认无向、可切换有向。逐轮记录“定居哪个节点、距离多少、每次松弛如何更新临时距离表”，平局按字典序取最小节点名，日志与教科书演算完全一致；负权重按业务拒绝，终点不可达作为合法结果报告。经典例：A-B 4、A-C 2、B-C 5、B-D 10、C-E 3、D-E 4、D-F 11、E-F 8，从 A 到 F → 最短距离 13，路径 A→C→E→F。

> 标准页面: https://elysiatools.com/zh/tools/graph-shortest-path

- **分类:** Math & Numbers

- **关键词:** 迪杰斯特拉, 最短路径, 图, 带权图, 距离表, 松弛, 寻路, 网络, 算法, 离散数学

## 概述

图最短路径计算器是一款专为离散数学与算法学习设计的 Dijkstra 手算辅助工具。只需输入图的边列表（包含起点、终点和非负权重）以及起止节点，工具即可自动计算出最短路径与总距离，并完整呈现每一步的节点定居、边松弛操作与距离表更新过程，帮助您轻松核对算法推演步骤。

## 输入项

- **边（每行：起点、终点、权重）** (textarea): One edge per line: two node names (1–8 letters/digits) and a non-negative weight.
- **起点** (text): e.g. A
- **终点** (text): e.g. F
- **按有向边处理** (checkbox): When checked, each edge only leads from the first node to the second; otherwise the graph is undirected.
- **小数位数** (number)

## 适用场景

- 在学习数据结构或离散数学时，需要核对手算 Dijkstra 算法的每一步松弛与定居记录。
- 设计小型有向或无向网络拓扑时，需要快速验证两点间的最优路由与累计权重。
- 分析带权图的连通性与最短路径，排查目标节点是否可达或验证路径选择逻辑。

## 工作原理

- 在文本框中输入 1–30 条边数据（每行格式为：起点 终点 权重），并指定查询的起点和终点。
- 根据需求勾选“按有向边处理”，并可选择性调整输出距离结果的小数位数。
- 系统基于 Dijkstra 算法逐轮确定已定居节点，执行边松弛更新距离表（平局时按字典序优先选取节点），最终生成详细的演算日志、最短距离及路径序列。

## 使用案例

- 计算机专业学生核对数据结构作业中图论算法的手算推演与距离表状态。
- 算法讲师快速生成标准的 Dijkstra 逐步演练步骤与教学参考答案。
- 网络工程师对小型节点拓扑进行最短路由模拟与距离验证。

## 常见问题

### 输入数据支持负数权重吗？

不支持。Dijkstra 算法要求所有边的权重必须为非负数，输入负权重将被提示拒绝。

### 当多个未定居节点距离相同时如何处理？

系统会按照节点名称的字典序升序选取较小的节点优先定居，确保演算过程与标准教材一致。

### 如果目标节点不可达会返回什么？

若起点与终点之间不存在有效连通路径，工具会将不可达作为正常计算结果并在日志中明确展示。

### 最多可以输入多少条边？

工具支持输入 1 到 30 条边，节点名称支持 1–8 位的字母或数字组合。

### 有向图与无向图如何切换？

勾选“按有向边处理”即可将输入的每条边视为从首节点指向次节点的单向边；未勾选时默认视为双向无向边。

## 相关工具

- [音频转文字转录器 (AI)](https://elysiatools.com/zh/tools/audio-to-text-transcriber): 用 grok-stt AI 模型将语音(wav/mp3/m4a/flac/ogg/webm/aac)转录为文本、SRT、VTT 或 JSON。最长 10 分钟。
- [缩进列表转 ASCII 目录树](https://elysiatools.com/zh/tools/ascii-tree-from-indented-list): 把 2 空格 / 4 空格 / Tab 缩进的层级列表（Markdown bullet、- * 1. 前缀可选）渲染为可复制的 ASCII 目录树。支持 Unicode 方框与经典 ASCII 两种风格，以及整根纵线、行尾空格、叶节点方括号等开关。
- [颠倒文字](https://elysiatools.com/zh/tools/upside-down-text): 用逐字母旋转把文字颠倒（ɥǝllo），并提供可选开关保留阅读顺序、保护链接/邮箱不被搅乱。纯 Unicode 文本，无需字体。比聚合器里固定行为的颠倒行更可控。
- [指派问题求解器（匈牙利算法）](https://elysiatools.com/zh/tools/assignment-problem-solver): 用教科书版匈牙利算法求解 2–8 × 2–8 的指派问题（支持矩形矩阵，自动补零成本哑行/哑列）：先做行约简与列约简，再用增广路径在零元素中找最大匹配，不够则按 König 定理用最少直线覆盖所有零并调整矩阵，每轮减未覆盖最小元、加双覆盖交点；最大化问题内部取负求解后报告收益。逐步输出约简与覆盖过程，给出最优指派与总成本并代回验证。经典例：\[\[9,2,7\],\[6,4,3\],\[5,8,1\]\] 最小化 → 总成本 9（工人 1→任务 2、工人 2→任务 1、工人 3→任务 3）。
- [播客章节标记生成器（ID3 / Podcasting 2.0）](https://elysiatools.com/zh/tools/podcast-chapter-marker-builder): 粘贴时间码章节列表，一次生成全部交付格式：Podcasting 2.0 章节 JSON（v1.2.0）与 RSS podcast:chapters 标签、可选把 ID3v2.4 CHAP+CTOC 章节帧直接烧入上传的 MP3（毫秒为普通大端 uint32、偏移 0xFFFFFFFF、每章嵌 TIT2 子帧、保留原有标签帧）、Vorbis CHAPTER001 注释对（OGG/Opus）、mp4chaps 文本、YouTube 说明栏时间戳块与 SRT 副车文件，并附各播放器真实支持情况（Apple 自 2025 起支持 RSS JSON；Pocket Casts/Overcast 仅读内嵌 ID3；Spotify 两者都不读）。
- [音频旋律轮廓提取器](https://elysiatools.com/zh/tools/audio-melody-contour-extractor): 从音频中提取主导旋律，并在一个 ZIP 中导出 MIDI、音符事件、音高轮廓、SVG 和 JSON。
- [音频转多轨 MIDI(草稿)](https://elysiatools.com/zh/tools/audio-to-multitrack-midi): 把整曲混音拆分为鼓/贝斯/其他/人声,逐轨转成 MIDI——多轨扒谱的起点
- [肾功能药物剂量调整助手](https://elysiatools.com/zh/tools/renal-dose-adjustment): 按肌酐清除率（CrCl）给出 FDA/KDIGO 肾功能分级与剂量调整建议：正常 ≥60（标准剂量）；轻度损害 30–59（考虑减量或延长间隔）；中度损害 15–29（通常需减量和/或延长间隔）；重度损害 <15（显著减量，部分药物仅透析后补充）；透析患者需按药品说明书补充。两种策略：A 延长间隔（浓度依赖性药物，如氨基糖苷、万古）；B 减小剂量（时间依赖性药物，如 β-内酰胺）。本工具不替代具体药品说明书。不构成医疗建议。

## 示例

- [路径分析器样本](https://elysiatools.com/zh/samples/path-analyzer): 来自Windows、Linux和macOS的文件系统路径综合集合，用于路径分析和测试
- [导入路径示例](https://elysiatools.com/zh/samples/import-path-examples): JavaScript和TypeScript导入示例集合，展示各种导入模式和模块系统
- [ELK Stack 日志分析示例](https://elysiatools.com/zh/samples/elk-stack-samples): 全面的 ELK Stack（Elasticsearch、Logstash、Kibana）示例，用于分布式系统中的日志聚合、处理和可视化
- [无版权MP3音频样本](https://elysiatools.com/zh/samples/mp3-samples): 免费使用和测试的无版权音频样本集合，包括自然声音、冥想音乐和环境音频，适用于测试和开发目的
