GraphViz v1.0.3 发行说明
发布日期: 2026-06-09
版本: v1.0.3
仓库: https://github.com/SiriLee/GraphViz
v1.0.3 变更日志
修复
- Shift+Tab 前向缩进:子类化
GraphTextEdit 直接处理 Key_Backtab,编辑体验与记事本一致
- 自环被算法忽略:
degree() 对自环正确计 2,欧拉回路等算法现在正确处理含自环的图
- 操作符贪婪匹配:修复
1.000-->001 等右顶点以数字开头时被错误解析的问题
- 序列化格式:自环不再使用怪异格式,统一为标准
--> / --- 紧凑输出
- 清除确认对话框:移除无法生效的 Ctrl+Z 提示
改进
- 力导向布局:初始位置从随机散布改为环形均匀分布 + 小幅抖动,迭代次数增至 100,顶点分布更均匀,减少边重合
- 无控制台窗口:链接 Windows GUI 子系统,启动不弹命令行
新增 (自 v1.0.1)
- 自环支持(弧线渲染)
- 灵活解析器:空格、引号名、
<-->、多余 -、a-2-b、# 注释
- 重叠边自动偏移绘制
- 撤销/重做按钮 + 编辑菜单
输入格式全览
| 格式 |
结果 |
a-->b |
有向无权 |
a-2.5->b |
有向, 权重 2.5 |
a---b |
无向无权 |
a-3--b |
无向, 权重 3 |
a --- b |
无向无权(含空格) |
a-2-b |
无向, 权重 2 |
a<-->b |
无向无权(双向箭头) |
"abc"---"ab cd" |
引号名(含空格) |
A---A |
无向自环 |
A-->A |
有向自环 |
快捷键
| 快捷键 |
功能 |
| Ctrl+Z |
撤销 |
| Ctrl+Y |
重做 |
| Shift+Tab |
减少缩进 |
| Ctrl+O |
打开文件 |
| Ctrl+S |
保存文件 |
系统要求
- Windows 10/11 (64-bit)
- 无需安装 Qt — 解压即用
支持的图论算法 (9 种)
| # |
算法 |
方法 |
| 1 |
最短路径 |
Dijkstra |
| 2 |
最小生成树 |
Kruskal |
| 3 |
关节点 & 桥 |
Tarjan DFS |
| 4 |
欧拉回路 |
Hierholzer |
| 5 |
欧拉通路 |
Hierholzer |
| 6 |
哈密顿回路 |
回溯 + 剪枝 |
| 7 |
哈密顿通路 |
回溯 + 剪枝 |
| 8 |
连通分量 |
BFS |
| 9 |
强连通分量 |
Kosaraju |
技术栈
C++17 · Qt 6.11.1 · CMake · MinGW-w64 GCC 13.1.0 · Fruchterman-Reingold Layout