QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2926|回复: 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
    / z! D6 K% p( o5 t
    百度百科:最短路径
    2 O. Y1 f6 O1 m, I
    & g: y: }5 u+ B: O7 D1 j6 h$ ^& R用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。- Q( i+ ?0 i1 S# p2 L$ i. m: B
    中文名 最短路径! i3 m# y. p/ ~6 c
    特点 以起始点为中心向外层层扩展* ], T) W9 I/ L
    性质 一个经典算法问题
    ) V1 D! R; J7 r- Q解决方法 Dijkstra算法A*算法
    - A8 |$ [' v$ v; d6 P5 L$ z8 j
    # M  u' `/ R- ~4 m" n8 Y$ L概述3 y9 M" g/ H' t, X
    $ x1 \* R) \, e8 D3 ]; w7 d
    最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。 算法具体的形式包括:  |* u$ F) T, e% V, c
    确定起点的最短路径问题 - 即已知起始结点,求最短路径的问题。2 s0 E* h) v7 m2 m3 i
    确定终点的最短路径问题 - 与确定起点的问题相反,该问题是已知终结结点,求最短路径的问题。在无向图中该问题与确定起点的问题完全等同,在有向图中该问题等同于把所有路径方向反转的确定起点的问题。; S1 K7 H* A7 ~9 N
    确定起点终点的最短路径问题 - 即已知起点和终点,求两结点之间的最短路径。
    7 Q1 ?! u/ K5 h9 U& {全局最短路径问题 - 求图中所有的最短路径。8 _' l' a  e# F/ ?6 H3 j* B

    ; P7 \/ ?2 u: S////////////////////////////////////////////////////////////
    7 R0 ?9 w9 y. |4 p' v0 {
    # T) G- L% T' i' I2 P5 K& q最短路径算法小软件V5.0
    * X  w% s; x9 _- |3 ^: d) u2018年6月
    1 c: J  i3 M# y; T- H9 j9 i; M, F作者:李庚子李丙寅(李均宇)
    ) J, t, U7 W" W$ h8 L8 B& h. w; GQQ:165442523 $ A- m3 s. _" `4 p0 ~& |( B. B( ~
    EMail:165442523@qq.com  
    1 y* P! \# ~$ B% ]6 S& M- [http://www.okmyok.com/lisoft.htm5 x) Z" \1 |: t5 M
    ; K5 W/ G; g3 z4 O
    下载地址:3 I: T( H& ~' v1 I/ O1 R
    https://pan.baidu.com/s/1dY_9GQC3G435d2nke2WoQg
    8 J: G8 D0 {) ] 最短路算法小软件3.jpg
    " v9 v8 {: N; S( Z4 y3 B8 J% }3 M: M# b" z

    3 r. D8 d: Q- ?% C% D1 Q 最短路算法小软件2.jpg
    # `6 F: P; G$ y6 _6 g
    $ j* S4 o! ?8 u* l" H
    5 v2 i! k9 M; ]! e* t5 d 最短路径算法小软件5.0EXE.zip (3.38 MB, 下载次数: 1) ! \& `) u& @) b& H

    ( M' V+ l* _9 {. n9 P2 Z% s. c
    5 C/ Y7 g3 _8 B3 ~: v9 E 最短路算法小软件1.jpg . V& |/ i4 }9 x; U

    8 q2 f& ^- {4 k
    ; D& ^: H9 o1 R" T* ~: K9 V
    . F* _! Q( I: J$ M7 c1 x' {4 i0 G7 @
    ! O% q0 i, A. R" N: z  ?- K: T$ R
    & V3 B& Q8 ^) Y0 \7 k2 h+ P% J3 L

    $ {/ a/ Y( f7 B1 j% U) ]! W
    , v0 g1 p  h) {6 x2 p# t% r7 |2 b. z: U& J( g. {: J
    0 N3 u4 u6 u8 T8 G8 A7 z' @
    7 Q" y. ^7 a* }! Q# V1 b; B7 P

    5 \9 k7 `9 Z/ q' |* }' t/ k+ x0 ]8 c9 H% d

    5 b- t3 L5 D, m3 l+ w/ ?& k1.本软件为小软件,不想为项目管理花过多时间,例如要新增一个项目,又删除或修改一个项目等。
    0 G( H! p9 T/ ]+ R1 M. P+ H" F为此,本小软件只有两个默认的项目,一个为演示项目,一个用户当前正在使用的项目,不能增也不能减。" E/ g' [6 P) \+ [3 x% {: }
    用户可以清空当前的用户项目,从而使用自已自定义的项目。先输入质点数等等。
    ! [" W: n! I$ t! W3 L8 ~如果你要多个项目,可以COPY多个本软件所在文件夹使用。
    4 J5 `0 E4 T: ^/ V. ]% U) _) S2.初始化粗略质点坐标时,边长不作校验,例如,三角形两边长之和本应大于第三边,但是输入时三角形两边长之和小于第三边,将不作检验,所以请手工确保原始数据的正确性。# C2 a! A, v. d5 Z
    3.质点坐标是屏幕像素坐标,left,top,纵坐标向下不是向上,与数学上的纵坐标方向相反。
    ; j+ G: V- z, U: i8 @4.坐标为屏幕像素坐标,所以只能整数,边长为两位小数,如果四舍五入导致的出错不作处理。
    0 ]6 D* g% b9 w$ j- ?" m5.注意,用户要先点击“注意:先清空用户项目!!!”才可以自定义自已要用到的顶点数的改变。
    : h6 w3 h1 r) \4 Z' S, E; K! g, p! u! d; {( ^5 t
    4 }, o) i( u. ~0 c; d+ t5 ^- g) B
    本次升级到5.0主要修改如下:! b. o& z, A2 P3 `( T! v
    1。边线条改成灰色,当鼠标移到边线条时,高亮显示边与边长数字,这对于边长数字重叠时有用。
    ' ~* h; y9 N" C! c/ A* r2。点坐标可以超出屏幕范围自动产生滚动行,但点坐标不可以为负数。& R+ m' A. U2 i  |0 D
    3。增加了SPFA算法,来处理边长为 0 或者负数的情况,但SPFA当有负环时无解。! B8 w6 H' v; I- I4 T  `
    4。增加了处理负环的两个新算法,这两个算法皆为作者自创的新算法,一个点与边都不可以重复,另一个点可以重复,边不可以重复。
    $ K# F( R. L4 T- v3 X5。边长为负数时最好有方向单向,一般不允许双向或无向。或者每条双向无向的负数边,可以每次取单向,如此组合出所有情况,来求最短路径,再在所有最短路径中再取其最小值。这个组合的算法暂不处理,由用户手工处理。
    0 D1 y! B# \4 n* J2 w6 K( c9 ~* n3 u( c; S
    升级到4.0时主要修改如下:
    / U" b  N% x9 g- H7 K  O1。更正了算法上的一个BUG。
    0 j4 `9 a- K8 y! D% z% s! ?1 B2。边长由只可以为整数升级为可以为两位小数。
    0 z/ J: ~  i7 o% S2 j( u3。增加了可以保存运算结果,下次不用再运算的功能。$ }4 [  Z" |3 ~" C  X
    4。增加了可以列举所有最短路径的功能,不止一条最短路径时有用。+ h8 ?# |# {2 a7 D; ]9 l) p, D4 w
    5。增加了边向量功能,边向量方向可以双向或无向,或序号从小指向大,或序号从大指向小,三种选择。8 g0 _$ q& d* ]6 e; i+ A: i
    6。改正了设置起点和终点的小BUG,增加了进度条显示。
    8 K7 Y! E2 p+ p+ P$ T, K8 z7。增加了可以鼠标拖动质点,所相关联的边相应变动的功能。
    1 _* T3 G1 t, @6 b1 ~
    # Q9 {, [$ c& p# X2 E5 P, F作者的个人网站:http://www.okmyok.com/lisoft.htm! ^" D7 z8 k" Q# J
    上面有作者个人开发的所有软件,全免费下载。免费但不开源,源代码要收费。% r* C$ k4 h$ T7 Z
    上面有作者个人开发的中医五运六气和子午流注软件,有PC电脑版,安卓版,ASP网页版等。
    6 U5 N- n5 R: [0 J还有作者开发的“行星财务”安卓软件,是一款在安卓设备上运行的真正意义上的财务软件,不是记录个人收支的个人记账,在安卓手机上可以运行,掌上财务软件。, V7 g% o2 W3 |2 N
    还有作者开发的TSP算法小软件,或叫旅行商问题,不了解者可以百度。& Q' e' s" t! d
    还有作者开发的表达式求值的计算器,可以层层括号等等。。。. q, Y2 j6 `/ X+ d0 i1 Y, A- j! `" X

    / _4 K( t$ y" u' `/ J我的软件全免费,无广告,无须权限,无须上网,无时间和任何功能限制,纯绿色不污染系统,不体积庞大。。。% p: t) D+ r7 Y2 F5 x3 X) {
    & k- r7 J0 D% b; v" |6 s5 A
    " t+ d% G* J: a
    1 j' H) L" a3 N0 j
    0 e. m$ p" [# q6 Q2 d1 N( M
    0 l% y3 e7 |: K- t3 J/ G! Y$ P
    3 c) [5 C# r- m, K
    + f; U; t- j1 p& v% c( D5 Y

    & l' z9 ^; g# O8 U# A4 p; A3 d
    4 X! {& K9 @4 ]; N
    " k0 A5 Y6 }* p" n7 h; d1 V6 Q6 h3 Q+ `0 M$ ?) I1 x
    0 t. `( M! i/ B* x5 [

    + q6 @/ {9 t* e, a" r% X( ]' i7 J% D, o6 R# F; G
    ( k3 C( L8 e  @# g& J
    6 h4 R6 A  Y, Z( K0 e
    # X, |8 ?5 S# l, X& x! o$ ]

    3 b7 I3 w. ?+ }5 q2 b* I* S
    8 T0 v; y2 W! {9 e
    5 Y. P, W  b  Y9 D! }: ]2 |$ }# M/ F; {

    5 I- r4 f( q7 }, L, n- M' ?9 x0 o6 r6 Q  H0 J0 G6 v; R. P" A

    # Y$ A- e- L! k$ d- o5 r( Q5 |% F( _" s8 w  [; q
    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-8-28 20:17 , Processed in 0.399725 second(s), 53 queries .

    回顶部