QQ登录

只需要一步,快速开始

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

[问题求助] 关于图论的广度优化搜索,语句while~isempty(g==1)正确吗?

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

9

主题

7

听众

188

积分

升级  44%

  • TA的每日心情
    慵懒
    2013-8-23 15:15
  • 签到天数: 84 天

    [LV.6]常住居民II

    自我介绍
    我想参加明年的数模竞赛

    群组西安交大数学建模

    群组数学建摸协会

    群组英语科技论文写作实训

    跳转到指定楼层
    1#
    发表于 2013-3-2 17:01 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    此程序的14行,while~isempty(g==1),为什么行呢,什么意思?难道这个和while~isempty(find(g==1))是同一个意思?  S9 y7 r' e+ U; {* Z
    我个人理解,g==1除非g是空的,否则g==1都会返回一个逻辑矩阵才对啊,不会变成空的。2 W1 u  o0 @6 b" L/ {( c5 C
    function [w] = bfsf1(g)
    5 }. L* V% O1 U2 D& E/ n6 R%广度优先搜索& r# n6 q$ M! c6 t! \8 m, y
    %g:邻接矩阵。w顶点标号
    0 Q6 N2 b6 R/ P& J, Q) Hn=size(g,1);
    ) k  J, S9 `' j+ s& Uw=zeros(1,n);5 c8 u+ ^, E; R! |. }
    l=0;
    + f; w9 q+ i  ?* Cv=1;2 @! h1 Z( l8 S( i; P: g! k, V
    a1=find(g(v,:)==1);) m; Y/ K" u/ x9 V% L0 q- p3 T
    g(v,a1)=2;
    * g; |  m8 P: T% C) f" Q" Ig(a1,v)=2;
    " i& k" k6 L6 {w(a1)=l+1;
    3 j, f* T7 I: ?s1=union(a1,v);+ C$ a) h9 H7 `6 w0 ?' F% B# M
    l=l+1;9 ]9 y3 z# U+ Z" P
    while~isempty(g==1)
    , T2 `; p2 ~& k: w" s) x( l5 L   a1=find(g(s1,:)==1);
    $ H' l# w! a, l8 A7 G    t=length(s1);, Z, y' p  E' p9 w2 S& H. ?
        d=[];) K0 T# ^. a1 S  R2 L. x$ C* h
        for i=1:length(a1)
    * M' ]" M5 X4 f2 c3 Z) q9 f        if a1(i)/t>floor(a1(i)/t)# h! ^7 v6 v6 N; ?! H5 b
                t2=floor(a1(i)/t)+1;
    2 }' v, J" q# z" k        else8 D5 E7 ]3 y8 h8 j/ x& \) F3 ?
                t2=floor(a1(i)/t);
    # I: T, t5 J/ Z4 R        end
    & v5 H# X  a& N& S* o+ n# Z        if isempty(intersect(d,t2))
    5 V: _( ~) W: o' L% C            d=union(d,t2);
    + Y& ?+ p0 g: q" o3 k# _: Q; H7 t4 C) v        end
    - ~' p6 D0 y" T+ R# c+ ^5 T    end
    . y4 o( F7 ^7 z* b/ H- M    d1=setdiff(d,s1);
    ( ], ]& b9 ]' H. `6 B5 {    if isempty(d1)
    2 Y) G8 W1 G: L1 A0 e7 s$ G4 I        break;
    # p; M- U+ K0 b0 j2 A$ q    else
    ( r0 |' x, Y; u( i6 D+ n- c        w(d1)=l+1;3 b  V- G5 d' Z/ u1 v1 C
            g1=g(s1,:);
    ) W3 _) a: T' I: J2 M        g1(a1)=2;
    ) b9 [; Y5 p( u0 [# r        g(s1,:)=g1;5 g, |% j" x; t
            g(:,s1)=g1';
    ; s3 V. K* m. i! `9 w        s1=union(s1,d1);( n. Y( v, h* ~7 d7 @* j
            l=l+1;
    + h' t! O) x3 e# p9 W$ e    end
    $ i: q- C  Y" s1 }& Xend  C+ C$ M/ ?/ r6 f( ]4 Z
        $ o8 l* {" M; t8 o( u5 s9 M! B
    end$ A* }' _% Y( n& E0 J( l
    * e( C* u8 l# i9 V
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    9

    主题

    7

    听众

    188

    积分

    升级  44%

  • TA的每日心情
    慵懒
    2013-8-23 15:15
  • 签到天数: 84 天

    [LV.6]常住居民II

    自我介绍
    我想参加明年的数模竞赛

    群组西安交大数学建模

    群组数学建摸协会

    群组英语科技论文写作实训

    帖子里面的笑脸其实是: 和) 不知怎么搞的打出来了就变成了笑脸

    点评

    madio  这种情况在右侧点击“禁用表情”就没有了。  详情 回复 发表于 2013-3-2 21:34
    回复

    使用道具 举报

    madio        

    3万

    主题

    1312

    听众

    5万

    积分

  • TA的每日心情
    奋斗
    2024-7-1 22:21
  • 签到天数: 2014 天

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

    社区QQ达人 邮箱绑定达人 优秀斑竹奖 发帖功臣 风雨历程奖 新人进步奖 最具活力勋章

    群组数学建模培训课堂1

    群组数学中国美赛辅助报名

    群组Matlab讨论组

    群组2013认证赛A题讨论群组

    群组2013认证赛C题讨论群组

    ganquanlife 发表于 2013-3-2 17:04 # a% ~3 f+ k, H( r
    帖子里面的笑脸其实是: 和) 不知怎么搞的打出来了就变成了笑脸
      w4 l& ?# A, j4 D9 {
    这种情况在右侧点击“禁用表情”就没有了。
    数学建模社会化
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-7-22 01:30 , Processed in 0.473431 second(s), 67 queries .

    回顶部