QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3698|回复: 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))是同一个意思?
    6 [8 S/ D7 H: d. N' P- _+ @8 N我个人理解,g==1除非g是空的,否则g==1都会返回一个逻辑矩阵才对啊,不会变成空的。
    9 E6 W* O0 ~# ofunction [w] = bfsf1(g)
    4 T( y/ H4 C7 y  h) t0 u%广度优先搜索
    6 d- d( g- b8 X. t; q  a% ~" h%g:邻接矩阵。w顶点标号' S2 W3 W: A% D
    n=size(g,1);7 u  }0 n5 n# q; }* N
    w=zeros(1,n);
    , n/ [' A7 a" i  Ll=0;
    " Q5 I" s# O, C. H7 E$ q- y, I  qv=1;
    0 M5 W0 h$ n( q* V5 Y& sa1=find(g(v,:)==1);
    ; Y0 b- B8 `* p2 S0 V, Ag(v,a1)=2;
    ! t2 Q" w2 V! N  K" Y! c+ wg(a1,v)=2;9 H- o+ t) _/ ]
    w(a1)=l+1;9 k2 f5 R2 m- t1 b) i; d( J
    s1=union(a1,v);& @4 P/ }8 r8 e5 g! Q4 b
    l=l+1;2 i* B+ H: d- K
    while~isempty(g==1)
    " R4 G0 H, I* R, t   a1=find(g(s1,:)==1);
    1 `; f: c$ U5 U" y' r% Z8 i    t=length(s1);
    1 m7 d# b& ~) \9 T) h, Z- j    d=[];1 `+ h5 O4 {& g& n( N+ j
        for i=1:length(a1)
    1 ^) w0 K0 c5 z7 b        if a1(i)/t>floor(a1(i)/t)
    $ M; `1 C  F! G# T* a* q            t2=floor(a1(i)/t)+1;
    4 g" ?3 S+ p1 x- ?0 I  g9 s+ f        else4 o* m9 A& E$ Z& q% {
                t2=floor(a1(i)/t);( a& t- _: F  d' C' S5 _
            end" J7 G- s% q; `' `- H- ~
            if isempty(intersect(d,t2))8 M& J0 C$ {# w4 `8 e. w7 U& h
                d=union(d,t2);% b% Q  C; J2 j5 J$ m+ [
            end
    0 ]; Y8 o* z1 W3 L. e+ ?    end
    ! @% N2 _* F- U  E    d1=setdiff(d,s1);
    2 u' n0 j* w7 a    if isempty(d1)! y. |5 k" i, ~) y. ]( t( K
            break;
    # m1 B" M# G+ [& m% c! S- ?, Y, R    else
    # W) P7 f3 Q: x- d        w(d1)=l+1;% U) u# d  Z& E$ a& c+ o4 n! b
            g1=g(s1,:);$ I5 T6 a) `3 ?* W, i" ?3 p+ ~
            g1(a1)=2;
    7 b0 s( [" x7 B        g(s1,:)=g1;, z# U4 v0 p8 E0 ?3 C6 s  E
            g(:,s1)=g1';
    ! M$ {* J6 I- e; n. a        s1=union(s1,d1);+ {1 [7 B7 e; h4 M* @% p& @
            l=l+1;
    & }7 i+ T) B+ ^+ d  [    end
    ( I: @" y. j. O' j0 Pend
    8 R0 A+ P6 b, e: p    6 i8 |1 k  `8 z" {: x8 R! H: u
    end
    ' A5 Y* Y$ q% F+ p9 _4 d
    9 T+ f) R) g4 T- N) w# Q
    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   Q# n1 i2 U) t1 E7 x) Z
    帖子里面的笑脸其实是: 和) 不知怎么搞的打出来了就变成了笑脸
    3 U: y; O8 M3 [9 W& }/ M
    这种情况在右侧点击“禁用表情”就没有了。
    数学建模社会化
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-9-10 13:47 , Processed in 0.825514 second(s), 68 queries .

    回顶部