数学建模社区-数学中国
标题:
最短路径算法小软件V5.0
[打印本页]
作者:
释永思
时间:
2018-6-28 12:39
标题:
最短路径算法小软件V5.0
; S" G5 G1 m" D* D
百度百科:最短路径
9 a7 e- F/ A$ F/ c5 F
) `, U0 r4 J9 e! e
用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。
7 C$ g: k" G" J
中文名 最短路径
: n, s. {7 T9 r
特点 以起始点为中心向外层层扩展
' i2 f+ [: g% E
性质 一个经典算法问题
( w0 I# X% p t1 k* {" y
解决方法 Dijkstra算法A*算法
/ b$ b: B! J8 V9 f
, ~, q, X; G# A9 w: Z
概述
* r% P! C3 e! L, `4 X, ^
" A% `7 B$ z" d" C) B" ~- j
最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。 算法具体的形式包括:
0 s/ t `& z+ Q a# W
确定起点的最短路径问题 - 即已知起始结点,求最短路径的问题。
4 L A3 \* g7 b" B" r- g
确定终点的最短路径问题 - 与确定起点的问题相反,该问题是已知终结结点,求最短路径的问题。在无向图中该问题与确定起点的问题完全等同,在有向图中该问题等同于把所有路径方向反转的确定起点的问题。
" @! A- A# _, u0 O$ ]* ?
确定起点终点的最短路径问题 - 即已知起点和终点,求两结点之间的最短路径。
; p$ L" n6 [# C6 L @& I
全局最短路径问题 - 求图中所有的最短路径。
/ d: p& _5 d! e8 X3 D
+ j/ n! B1 T8 C, r
////////////////////////////////////////////////////////////
* o0 o% t. H# S& w
- {' |- G2 L8 y# U, g% E
最短路径算法小软件V5.0
1 P$ k1 w8 M B' r- C+ R1 m! j
2018年6月
$ P* T" G2 q: H( K* Y$ v& T. ]
作者:李庚子李丙寅(李均宇)
4 Q! T- d6 {2 n; R2 a, Q
QQ:165442523
/ K: B3 n( n# T8 y0 I0 [! h
EMail:
165442523@qq.com
2 |, j/ w% K2 v3 j0 u3 o2 H+ V
http://www.okmyok.com/lisoft.htm
) ~' G7 b; U7 ^/ h
: Q2 d2 R9 w# u5 i6 [
下载地址:
# ^" D3 E0 ~5 d/ `; S' H
https://pan.baidu.com/s/1dY_9GQC3G435d2nke2WoQg
/ H C6 B. Q/ C- L+ |
2018-6-28 12:39 上传
下载附件
(245.32 KB)
6 w7 y( R: A$ B& o2 i
, g" l8 r8 P( T
/ I! k' Y6 G! D
2018-6-28 12:38 上传
下载附件
(235.45 KB)
! |' q9 G" k U# L9 m' A' X% t3 o a
4 J0 y8 ]* a1 G) G- {% z& T1 ?
3 u- Y, q9 ~' O4 B& U7 e
最短路径算法小软件5.0EXE.zip
(3.38 MB, 下载次数: 1)
2018-6-28 12:38 上传
点击文件名下载附件
下载积分: 体力 -2 点
" e9 u- t$ p i5 e6 t2 z1 Q* @( e2 Y
* q6 ?. C& N& L6 b! V
" u. y: Y3 h5 y/ V* H5 `# a
2018-6-28 12:37 上传
下载附件
(287.62 KB)
- f3 z% O+ s; p5 r% t) _# s$ |: P
7 Z6 d. i% O$ J; k) ]: |
2 I5 L2 B1 A6 r$ V8 r2 u2 A
" }! i- W: N5 S5 x
( A# E! m; }, v7 D
8 p% G1 V/ Q9 y6 Y4 }. P: n2 P
1 x0 |5 B" @, ?
! S! m5 g. E+ {4 P- V
5 r0 ^- g5 b! ~. Q
& T$ \/ F! S6 }
; Y# w/ @+ C: G) F( y
% L5 Q- s- b4 H1 Z3 P. I! l
( }1 @+ f: V( x, H0 ~, S
: M+ L7 B" O0 P
9 p0 P1 k* K. m. ^; [- P7 j
1.本软件为小软件,不想为项目管理花过多时间,例如要新增一个项目,又删除或修改一个项目等。
$ S* J% w9 ]4 T+ ~: _' l' x
为此,本小软件只有两个默认的项目,一个为演示项目,一个用户当前正在使用的项目,不能增也不能减。
& q% n9 d# ?8 W- ~) @! w
用户可以清空当前的用户项目,从而使用自已自定义的项目。先输入质点数等等。
& l7 x5 t( q, Y. N, `# k" u
如果你要多个项目,可以COPY多个本软件所在文件夹使用。
' D; N3 s, v" J: g( @; N- F6 F% r- N
2.初始化粗略质点坐标时,边长不作校验,例如,三角形两边长之和本应大于第三边,但是输入时三角形两边长之和小于第三边,将不作检验,所以请手工确保原始数据的正确性。
4 d$ {$ E0 j9 j
3.质点坐标是屏幕像素坐标,left,top,纵坐标向下不是向上,与数学上的纵坐标方向相反。
/ v ]6 a! H9 c% r: B% Y. r
4.坐标为屏幕像素坐标,所以只能整数,边长为两位小数,如果四舍五入导致的出错不作处理。
$ d% A7 f9 C: h' J9 g5 H) |6 J
5.注意,用户要先点击“注意:先清空用户项目!!!”才可以自定义自已要用到的顶点数的改变。
' F8 k! {+ e0 N( O% I. N. _
5 S. B2 z; @0 k& K' O. v
& A8 n0 I; l( V: ]
本次升级到5.0主要修改如下:
; E; a: U ]6 m, ^$ C
1。边线条改成灰色,当鼠标移到边线条时,高亮显示边与边长数字,这对于边长数字重叠时有用。
2 C$ V+ T8 b9 I, _
2。点坐标可以超出屏幕范围自动产生滚动行,但点坐标不可以为负数。
) n5 q" I o. p. ?
3。增加了SPFA算法,来处理边长为 0 或者负数的情况,但SPFA当有负环时无解。
3 T0 v( h1 t7 F* n, w a' D
4。增加了处理负环的两个新算法,这两个算法皆为作者自创的新算法,一个点与边都不可以重复,另一个点可以重复,边不可以重复。
4 R- Y d. t8 i( W3 `" P3 E
5。边长为负数时最好有方向单向,一般不允许双向或无向。或者每条双向无向的负数边,可以每次取单向,如此组合出所有情况,来求最短路径,再在所有最短路径中再取其最小值。这个组合的算法暂不处理,由用户手工处理。
: v4 z8 l+ {/ o: G6 `+ X, g
' T% p) X" `& }( E( T
升级到4.0时主要修改如下:
2 T( |+ b7 E7 @4 `. y3 w- O/ h
1。更正了算法上的一个BUG。
0 v" d! _6 `* _& _" v7 T S
2。边长由只可以为整数升级为可以为两位小数。
3 A# S- Y( `* j1 J- A& R2 n& u
3。增加了可以保存运算结果,下次不用再运算的功能。
" q3 c# H& n' ? f7 _, X
4。增加了可以列举所有最短路径的功能,不止一条最短路径时有用。
5 T4 u/ o2 r H# u/ F, j k7 G
5。增加了边向量功能,边向量方向可以双向或无向,或序号从小指向大,或序号从大指向小,三种选择。
& @- g( [% G7 e6 u) @4 o1 [
6。改正了设置起点和终点的小BUG,增加了进度条显示。
8 d$ H6 m1 _$ } D$ f( @5 {9 R
7。增加了可以鼠标拖动质点,所相关联的边相应变动的功能。
- r9 ^/ z r( D$ e! x7 R
9 Q" I Q% B `5 `4 p3 T
作者的个人网站:
http://www.okmyok.com/lisoft.htm
) W0 v6 l I, ~+ O+ |
上面有作者个人开发的所有软件,全免费下载。免费但不开源,源代码要收费。
9 A0 N( l$ s& i; X. ~0 X3 @
上面有作者个人开发的中医五运六气和子午流注软件,有PC电脑版,安卓版,ASP网页版等。
" m9 X" T2 d, U. Z4 o' M$ E
还有作者开发的“行星财务”安卓软件,是一款在安卓设备上运行的真正意义上的财务软件,不是记录个人收支的个人记账,在安卓手机上可以运行,掌上财务软件。
" L5 _9 u5 W3 D1 C& w- u9 g; b
还有作者开发的TSP算法小软件,或叫旅行商问题,不了解者可以百度。
& F" z. H1 ^ h: M! A
还有作者开发的表达式求值的计算器,可以层层括号等等。。。
6 C# q+ S y/ \3 ~( `6 c
( d9 P7 q! _+ B; i3 [" T' Z+ u, l
我的软件全免费,无广告,无须权限,无须上网,无时间和任何功能限制,纯绿色不污染系统,不体积庞大。。。
# v4 c0 j( p# V& X
9 v! w8 h5 M# d* K8 s
! g" G p4 _4 F3 Q! ]& `
5 m7 `7 ]# W& k: i3 Z
- X5 g7 T K& E8 g/ t
& L- s4 c6 f8 y) R
; y0 b7 z1 {9 E$ }5 t0 Q- p! L ~# j
2 P8 d0 Y& @+ Z/ j; \8 n' c' x
& q8 G& r5 u1 _$ E( y5 O3 i
, }& n8 a) d8 t; s* _
$ P. [2 r+ R, C: y
. ]& ?% p( v! g( U& A
. A5 t% J7 K! }* o2 s. C8 V8 C [
7 o/ L3 z& [4 ~5 [# \7 e
% v, q$ w. G; j! L
! R. w; x8 N9 y' t
. w6 j! Q8 {. R* B
# S" F9 O' \9 O: o$ t1 r
4 |- |0 h' x* [( K7 _
) v) |+ k2 O2 ]
) N( |! Q( V. l
& y$ q) v" _. d( a
* P0 \. U; C6 \* [% K/ J3 j8 [" N9 M
6 n. X" j) J9 ~0 y3 D) i
8 P" \0 b" [0 L2 S0 S
, X# o- z# ^; t0 C
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5