QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3432|回复: 0
打印 上一主题 下一主题

[其他资源] 最短路径算法小软件V5.0

[复制链接]
字体大小: 正常 放大
释永思        

23

主题

13

听众

146

积分

升级  23%

  • TA的每日心情
    难过
    2016-5-14 14:04
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    自我介绍
    软件开发工程师

    社区QQ达人

    跳转到指定楼层
    1#
    发表于 2018-6-28 12:39 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta

    * w0 J" Q( V. r2 x9 v& p& Q4 Z' i百度百科:最短路径
    ( e; W+ j  k2 m8 n
    4 I5 K# O" ]/ _' ]+ K用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。
    - D5 w9 o+ S: \/ t& S) f4 u# V5 p( J中文名 最短路径
    $ }- E: n; u5 U8 X8 s' w特点 以起始点为中心向外层层扩展1 _0 e/ \: h7 Y$ ?0 d0 [
    性质 一个经典算法问题4 I, {. [5 c, O' q1 ]
    解决方法 Dijkstra算法A*算法9 \' Z! R  Y( g# Z

    / O) g" ^  f' R$ B概述$ j' Y0 y& d4 P$ L% I* g( J1 r
    & l$ E8 S' c% E
    最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。 算法具体的形式包括:, a# p" p+ L, L2 f  ^) o
    确定起点的最短路径问题 - 即已知起始结点,求最短路径的问题。
    ( k6 l1 k% d5 K* A. Z4 U# b  M7 X4 J确定终点的最短路径问题 - 与确定起点的问题相反,该问题是已知终结结点,求最短路径的问题。在无向图中该问题与确定起点的问题完全等同,在有向图中该问题等同于把所有路径方向反转的确定起点的问题。3 ~) q* J2 p2 o' ^6 w; {: F) R
    确定起点终点的最短路径问题 - 即已知起点和终点,求两结点之间的最短路径。
    6 c% ^/ X& [: K" \' ~% w' W/ e全局最短路径问题 - 求图中所有的最短路径。% j) `$ P5 e8 }- n+ W5 ~' [: Y
    6 j: S7 I7 @+ S! f7 A5 w4 i7 H3 d
    ////////////////////////////////////////////////////////////8 V, n0 G; t4 A9 L1 o% v* N
    0 X/ h% O  N5 ?% v( k3 Y, B- L
    最短路径算法小软件V5.05 x& J' h- c# I3 {% j* ~
    2018年6月 4 L7 B- v: {) u; s4 @' F5 g0 ^
    作者:李庚子李丙寅(李均宇)
    & C, u& I$ Q* b4 TQQ:165442523
    1 C$ F0 J# N1 E0 ~EMail:165442523@qq.com  4 l6 @$ Q9 G/ x; z0 u" K( Q
    http://www.okmyok.com/lisoft.htm: V, r( P% S0 s1 G" b. J

    * {) @8 N1 U+ W" s下载地址:0 U$ J" c& J5 `$ c* a+ x
    https://pan.baidu.com/s/1dY_9GQC3G435d2nke2WoQg
    : V6 E# Y) b9 o/ C- x+ I7 P 最短路算法小软件3.jpg
    * A8 Q; T2 ~1 [9 D! d  E% `& d) l+ {$ J7 U, J# ?5 B# \

    ) D1 _0 w# r! j 最短路算法小软件2.jpg & h* a+ w$ V" f/ a. G

    6 }* L+ ?! E7 N7 Q) J8 j4 a2 V( i/ S$ l$ L
    最短路径算法小软件5.0EXE.zip (3.38 MB, 下载次数: 1)
    1 G5 G& [+ \6 U: W
    8 L8 I9 \; B9 O4 e  D  `: b' v- m( ~. l' Q  A9 X$ Y
    最短路算法小软件1.jpg
    ' Y$ \4 F' F. J, ^; r% R0 T' J! P1 }
    : Q3 i& [5 l" {( J
    ) H. h3 k/ s7 J5 a( B* J5 g! I" ~. r% A
    & ^+ l! Q' ^3 u8 B/ X5 V) s* P  U0 @& S7 b7 A7 g% Q" N# P9 ~

    3 r) x. ?/ `9 i+ p+ ?# a/ ~8 J+ U% d4 u2 Y; L4 r! t

    : @7 p0 q' o& S1 @5 x  |" c9 Z9 x  G$ w. e' w0 }/ u
    8 k' h; X7 s) q7 m$ L2 g3 m

    + e9 I9 g  t/ f( w% y+ C- o1 Q- {( @! |5 G' W
    5 a$ F  ^4 }( S! p$ k7 @$ a; Q' k: O
    / Y* [4 n. K7 l- J) X1 h+ h- w

    $ o2 q" A3 U' v1.本软件为小软件,不想为项目管理花过多时间,例如要新增一个项目,又删除或修改一个项目等。1 N  g  v- ~# [$ C+ @
    为此,本小软件只有两个默认的项目,一个为演示项目,一个用户当前正在使用的项目,不能增也不能减。! s0 }# e- ]; A2 n0 Q% c
    用户可以清空当前的用户项目,从而使用自已自定义的项目。先输入质点数等等。
    $ x# n! U' g  y+ O9 o如果你要多个项目,可以COPY多个本软件所在文件夹使用。+ G& d3 k8 ]( B, r* t4 e
    2.初始化粗略质点坐标时,边长不作校验,例如,三角形两边长之和本应大于第三边,但是输入时三角形两边长之和小于第三边,将不作检验,所以请手工确保原始数据的正确性。
    2 f3 @2 s! \5 I3 z1 a- s3.质点坐标是屏幕像素坐标,left,top,纵坐标向下不是向上,与数学上的纵坐标方向相反。6 j+ p" e( q% h3 f* i
    4.坐标为屏幕像素坐标,所以只能整数,边长为两位小数,如果四舍五入导致的出错不作处理。
    ; S! }; ]( i! Z& z5.注意,用户要先点击“注意:先清空用户项目!!!”才可以自定义自已要用到的顶点数的改变。
    4 {3 b. B. f2 X9 Y4 l. j% G! {  i  {' s' ~; H: r% }  ?% A
    : }- k& a8 y" y) j& C! \1 L9 ~
    本次升级到5.0主要修改如下:
    8 Z! S; v& Y8 Y1 v1。边线条改成灰色,当鼠标移到边线条时,高亮显示边与边长数字,这对于边长数字重叠时有用。
    ( y; R) |9 G( R( Q! R" V2 U& D9 x2。点坐标可以超出屏幕范围自动产生滚动行,但点坐标不可以为负数。5 [/ |$ V; |: s' w) Q; w/ U
    3。增加了SPFA算法,来处理边长为 0 或者负数的情况,但SPFA当有负环时无解。4 p- ?* o( j3 E" S" L5 y: }
    4。增加了处理负环的两个新算法,这两个算法皆为作者自创的新算法,一个点与边都不可以重复,另一个点可以重复,边不可以重复。
    $ G, J+ ]  p! N5。边长为负数时最好有方向单向,一般不允许双向或无向。或者每条双向无向的负数边,可以每次取单向,如此组合出所有情况,来求最短路径,再在所有最短路径中再取其最小值。这个组合的算法暂不处理,由用户手工处理。
    - ]( v, E+ O# T" H6 C7 v5 S* g4 j. T; [6 P9 z" Z# P
    升级到4.0时主要修改如下:
    : v! W2 y0 @1 o9 H& [1。更正了算法上的一个BUG。
    . y) [$ E0 L3 M$ V2 N! g2。边长由只可以为整数升级为可以为两位小数。
    3 c4 F* T; H  ?1 \' r8 a% |7 ?5 I3。增加了可以保存运算结果,下次不用再运算的功能。1 c% v' V& o7 O
    4。增加了可以列举所有最短路径的功能,不止一条最短路径时有用。9 Z( O5 {8 l6 f% _+ c, ~
    5。增加了边向量功能,边向量方向可以双向或无向,或序号从小指向大,或序号从大指向小,三种选择。4 I% o9 _0 l; R+ R' j! q
    6。改正了设置起点和终点的小BUG,增加了进度条显示。& {: y: s, S1 Y; t' Z2 U5 ]8 ?
    7。增加了可以鼠标拖动质点,所相关联的边相应变动的功能。2 W/ J2 @& x; S* w

    . R! I7 F0 P) A) f& _作者的个人网站:http://www.okmyok.com/lisoft.htm
    & I# ]1 c$ u  @1 Y2 Q上面有作者个人开发的所有软件,全免费下载。免费但不开源,源代码要收费。9 N$ Q& s/ M# d
    上面有作者个人开发的中医五运六气和子午流注软件,有PC电脑版,安卓版,ASP网页版等。  x5 o, V: p; M" d  W1 }
    还有作者开发的“行星财务”安卓软件,是一款在安卓设备上运行的真正意义上的财务软件,不是记录个人收支的个人记账,在安卓手机上可以运行,掌上财务软件。5 K. [# |- r4 W/ M) `/ d2 N8 S+ r
    还有作者开发的TSP算法小软件,或叫旅行商问题,不了解者可以百度。
    9 ^& G, P: T* J! u% Q+ h还有作者开发的表达式求值的计算器,可以层层括号等等。。。
    5 U5 [+ F! j# ]; Z0 l6 F! d* k- A  L; \' k* S
    我的软件全免费,无广告,无须权限,无须上网,无时间和任何功能限制,纯绿色不污染系统,不体积庞大。。。* F# [( N5 K( I* O; k3 |& X

    ! w, o$ {8 w/ X8 P
    * f6 v! p# T  ~5 a
    ) g5 F4 E" s5 V8 W0 }9 @5 }$ t7 S) R

    & _# t# r* q- q: q  v( @) ]9 K  l0 O$ j& ?9 c; @
    ) w' W2 M% R# v, r, A" B
    $ s" ]7 V5 H. Q9 o" @$ x/ _

    + L- @) z; i* L" ~6 T0 y+ u& W. I3 b3 u7 `
    9 \) P2 m( F1 s# V3 O

    7 X4 i# U3 a$ G3 G6 y, z( |, `9 G: d% O- R9 R

    3 _$ G0 ^+ W6 ?3 ~1 g) Z. j9 N$ b

    $ o7 S! d: K6 j6 ^: ?* P
    2 X- f; [. D: T* b, [0 C
    : z9 N( K4 n  v" Y  M' S, S$ z% u* k- Y$ }
    3 v6 n! B: K# V$ }* t% ^  h7 G

    ; `& l: @' X& W; l8 T& {* F3 _; i) x+ r9 o- j# X
    * ^# G2 c/ I$ D& D, x4 |1 N' b

    ! M( R1 m' e5 N: N+ u, k2 `/ y  _4 V. Y, T  G4 F* D( x- ^
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏1 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-10-29 03:16 , Processed in 0.976319 second(s), 54 queries .

    回顶部