QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2990|回复: 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

    . n4 K/ @  F& C( k百度百科:最短路径4 v$ e/ N  V7 u7 F! w! B6 Z
    6 y9 \5 k8 ?8 k: {5 Z; d
    用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。
    8 O+ R& m; E# j" m+ F5 T& P0 r中文名 最短路径
    & m5 \8 E$ x3 v4 w特点 以起始点为中心向外层层扩展& S* g7 r3 u+ E4 c
    性质 一个经典算法问题
    3 n3 |* e5 ?# y4 ^解决方法 Dijkstra算法A*算法& T- z4 {9 P# |4 n, ]- o( c

    : Y' b" p% w2 E8 H/ M- `概述' |- o$ t1 G; z5 B8 W! j1 O

    0 E1 K. I& {9 m- G2 v' m# Y最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。 算法具体的形式包括:
    5 ?2 {  T0 y$ E5 J确定起点的最短路径问题 - 即已知起始结点,求最短路径的问题。- e' K) i8 e# E5 e, Q0 B+ v
    确定终点的最短路径问题 - 与确定起点的问题相反,该问题是已知终结结点,求最短路径的问题。在无向图中该问题与确定起点的问题完全等同,在有向图中该问题等同于把所有路径方向反转的确定起点的问题。/ Z: @2 U0 V5 i& V
    确定起点终点的最短路径问题 - 即已知起点和终点,求两结点之间的最短路径。
    9 Y4 G2 k6 ]9 Z  N0 F4 }全局最短路径问题 - 求图中所有的最短路径。( v. z7 {( q' t+ ?' U. j; ^' I& P

    5 V" g8 I& w! [  P. O6 T* f////////////////////////////////////////////////////////////: ~9 s) Y: a" ~  U, J1 t
    9 N8 A& i  G0 ~. L* H! E; i- f; g
    最短路径算法小软件V5.0# d$ t0 N  a1 b% C! S6 k4 b+ z) I
    2018年6月
    * X7 C6 e2 P7 y  n8 x作者:李庚子李丙寅(李均宇)2 k8 j2 g. O% \' g# I& K; N
    QQ:165442523
    % z6 L! ~3 c/ N& F) ~& {EMail:165442523@qq.com  & f- h: C3 N8 @8 W" X0 ^! h' z
    http://www.okmyok.com/lisoft.htm: n* A1 c8 j9 }  E5 x# g
    ) j5 `: ^" f/ r  y# U
    下载地址:
    2 i3 K( V$ f' k. M, Dhttps://pan.baidu.com/s/1dY_9GQC3G435d2nke2WoQg7 ~5 ]  x9 D: o" F, [/ S1 L  i
    最短路算法小软件3.jpg
    9 p5 t: e& |; x" W; U, n% J* b( Y. i1 ]( ^2 F0 l% y4 c

    - ?- h& A( N  E- ~ 最短路算法小软件2.jpg * p+ Y) Q0 ?& ~' `4 ^

    : b4 q  V' }% W  B/ K7 Q1 p5 S8 V! i  o! H2 d5 F7 Z. c' ]
    最短路径算法小软件5.0EXE.zip (3.38 MB, 下载次数: 1) & m, I: w/ Q2 \/ {2 f& q6 B

    9 E2 P' {7 ~* o3 g9 o, i7 U4 f6 w: ~$ k. B: H, q. p, J- M
    最短路算法小软件1.jpg & D& K: E$ k/ s% t9 U  v+ G& M$ r6 x

    ' ^# ~; W6 _) m; ~9 G0 q5 D2 s/ q' s9 c3 e" X6 W

    4 c% E  q1 a) J9 g2 b5 [3 ?7 i
    7 b0 C/ J/ x- X2 s$ M9 `; q- W* C7 [* E, A- z7 H4 f

    0 H4 {  v* T' `5 a  }" L" b$ p1 w1 n/ }! y/ b0 F/ w
    5 U% ?) J4 u# p- K8 ^

    4 Y8 P  B! F% r- U& E* H" R3 D5 s- g- |) g
    , n: S- K* v/ D( F0 e/ y/ o3 S3 i
    1 W7 T% I2 u3 H7 l' ?

    4 S; r( k5 z2 @* J# P; {1 G2 O7 y% |/ f: B, i* p
    1.本软件为小软件,不想为项目管理花过多时间,例如要新增一个项目,又删除或修改一个项目等。( R! ]% h. @, w# l9 K8 Y" f
    为此,本小软件只有两个默认的项目,一个为演示项目,一个用户当前正在使用的项目,不能增也不能减。
    0 u: d) J7 T$ a! k4 G) N# R) P0 f用户可以清空当前的用户项目,从而使用自已自定义的项目。先输入质点数等等。; H5 d4 ^: i( a7 i5 F! q1 e
    如果你要多个项目,可以COPY多个本软件所在文件夹使用。
    ! a" Y% R3 Q% t3 B0 l2 ~2 l2.初始化粗略质点坐标时,边长不作校验,例如,三角形两边长之和本应大于第三边,但是输入时三角形两边长之和小于第三边,将不作检验,所以请手工确保原始数据的正确性。) s2 z1 o$ E& Y' Q
    3.质点坐标是屏幕像素坐标,left,top,纵坐标向下不是向上,与数学上的纵坐标方向相反。  W, n7 q" b" f+ }, C4 l
    4.坐标为屏幕像素坐标,所以只能整数,边长为两位小数,如果四舍五入导致的出错不作处理。
    0 q* S' m) P. B+ P$ h" _0 V4 m5.注意,用户要先点击“注意:先清空用户项目!!!”才可以自定义自已要用到的顶点数的改变。
    % k& I# \2 K8 A& l: j) N& s: N# b' u' [, D
    1 e+ t4 H, w9 J1 [) f
    本次升级到5.0主要修改如下:
    6 P7 l) x1 |6 h0 O) o& p1。边线条改成灰色,当鼠标移到边线条时,高亮显示边与边长数字,这对于边长数字重叠时有用。5 C* L9 F$ Z/ c4 o2 g4 F+ j  E
    2。点坐标可以超出屏幕范围自动产生滚动行,但点坐标不可以为负数。# U( J1 R: _  v. z
    3。增加了SPFA算法,来处理边长为 0 或者负数的情况,但SPFA当有负环时无解。* n6 F6 r2 P) Z. e; f# D
    4。增加了处理负环的两个新算法,这两个算法皆为作者自创的新算法,一个点与边都不可以重复,另一个点可以重复,边不可以重复。
    ' r" d: S" D; }, e. ^  ~5。边长为负数时最好有方向单向,一般不允许双向或无向。或者每条双向无向的负数边,可以每次取单向,如此组合出所有情况,来求最短路径,再在所有最短路径中再取其最小值。这个组合的算法暂不处理,由用户手工处理。
    - \; V3 y  y, ~2 i& O9 ]6 R8 D# e% M6 c: P4 t
    升级到4.0时主要修改如下:
    ) H* w( I, V$ P, `8 D1。更正了算法上的一个BUG。
      c0 Y8 }9 l3 y. w3 s2。边长由只可以为整数升级为可以为两位小数。$ F* z3 E: @2 o
    3。增加了可以保存运算结果,下次不用再运算的功能。, q  |& B  m7 H- H  Q: e, @
    4。增加了可以列举所有最短路径的功能,不止一条最短路径时有用。' P# `; ?  I5 W2 w7 v2 s1 L
    5。增加了边向量功能,边向量方向可以双向或无向,或序号从小指向大,或序号从大指向小,三种选择。
    0 H* E1 V3 j' m5 O6。改正了设置起点和终点的小BUG,增加了进度条显示。$ v5 T+ x( R" x9 `
    7。增加了可以鼠标拖动质点,所相关联的边相应变动的功能。5 |3 A- H4 N  m9 c

    & _: l' x4 @3 Z' `1 T5 Q作者的个人网站:http://www.okmyok.com/lisoft.htm
      e+ [$ c+ r& ~: u& L, e% g( h上面有作者个人开发的所有软件,全免费下载。免费但不开源,源代码要收费。, @% g4 K6 ]# Q; v
    上面有作者个人开发的中医五运六气和子午流注软件,有PC电脑版,安卓版,ASP网页版等。/ i; c7 m; k5 @0 D/ f' d
    还有作者开发的“行星财务”安卓软件,是一款在安卓设备上运行的真正意义上的财务软件,不是记录个人收支的个人记账,在安卓手机上可以运行,掌上财务软件。
    2 F; p6 L/ O: y还有作者开发的TSP算法小软件,或叫旅行商问题,不了解者可以百度。
    $ a8 B1 {) \) r8 k8 k0 ?8 I6 N还有作者开发的表达式求值的计算器,可以层层括号等等。。。
    / R2 n8 \* o- \  A8 X* ^' j* r# g. l" B8 T: @" Q  Y+ m
    我的软件全免费,无广告,无须权限,无须上网,无时间和任何功能限制,纯绿色不污染系统,不体积庞大。。。
    4 r+ s6 D! a4 c" g& j& P
    8 S6 l  R' ~& b( V7 b8 q7 b* f
    ; _% [% ^7 b6 z0 f. w
    ) s) s, v% B) F' q9 J2 j3 T  f$ Q5 R& e. n8 K5 Q7 \2 Z/ O4 K& Z

    1 s3 W2 C2 z# G2 z5 ?$ B1 S6 L' U9 x8 h% J8 R
    % z& C* D& H9 U
    ! I/ q  m& s6 o5 L
    , v& b2 r# y: K2 P! R4 z% G1 V
    4 `% q. z4 B) m8 Q. x& m* Z) R
    0 o3 k2 ?) V9 i5 u. A" R* K+ e

    : T# e4 i( E1 Q8 o8 X5 ?3 q+ }$ _; r: J5 T0 m( ]2 ?

    + M5 \" O4 N1 I' a. _6 |. b2 p6 ]% Q- M8 q

    , B2 C0 ^" H2 b) k3 l: E
    & o1 ^9 j3 G$ P
    / y" z; ~+ H( u/ }) F* }  N# R9 @; }0 _+ t/ e! ?; Q5 \
    , e/ O! @' w3 e" C

    - U3 H. z2 v4 b% ~
    & F  V2 t; p$ g* h3 s
    # G  D/ A8 H# f. B) b0 @
    % }. r- ^% C8 I% F7 Q6 `% J! {# [& g" V. g7 [( M) t
    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, 2025-10-24 00:30 , Processed in 0.426451 second(s), 54 queries .

    回顶部