QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3580|回复: 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))是同一个意思?
    & Q( y* _* d( Y2 B- v- L- ]! q2 Z: E我个人理解,g==1除非g是空的,否则g==1都会返回一个逻辑矩阵才对啊,不会变成空的。
    1 Q! J9 t, p- C- ?5 ?function [w] = bfsf1(g)' W4 A1 k' S4 f) a# Y
    %广度优先搜索2 B# I, o; d5 x
    %g:邻接矩阵。w顶点标号
    % B+ }: t, B; E; R7 D' {n=size(g,1);& l/ g. ]. @, F% |6 C
    w=zeros(1,n);$ O$ B- K6 J. \2 a
    l=0;
    " _* t8 E! Z1 Av=1;
    ' o" |( J4 R' I* }a1=find(g(v,:)==1);" e( T# U( B" g; A$ }
    g(v,a1)=2;) k0 F8 B, R! ^. M$ E! k) v
    g(a1,v)=2;6 Z& K7 g% x9 C# n
    w(a1)=l+1;
    6 O9 b' M1 D/ Ms1=union(a1,v);
    8 z% }7 N. Z  ~4 t. yl=l+1;
    * g5 w/ m  V$ @9 ]* t8 ewhile~isempty(g==1)" G( a# Z& @: c& U7 m4 H, u4 q
       a1=find(g(s1,:)==1);6 M" x5 k. ~1 a/ `
        t=length(s1);
    $ Y  f; i  B7 h* P% [    d=[];
    3 N* |9 D% Y# d* Z- f9 {, D  {    for i=1:length(a1)
    ! E- S& e  `! x9 o" a3 l  S        if a1(i)/t>floor(a1(i)/t)0 I+ v  c6 m3 i0 T7 ]( U
                t2=floor(a1(i)/t)+1;( q/ D- f( m- q& ?' }
            else
    " v) M; X1 p- M( B            t2=floor(a1(i)/t);
    - O7 l0 a# {$ S7 P/ s2 `        end9 [1 @9 p9 e8 q! G
            if isempty(intersect(d,t2))
    # R; v+ R' L  O            d=union(d,t2);7 \" I) I" W# h% b4 I5 d
            end
    ( W; r& A: c4 f; @; ]; T; P    end# y/ L) t+ g3 K  j8 C
        d1=setdiff(d,s1);: w2 K/ T6 ]& S+ L" J
        if isempty(d1)' p; t5 @" y% I' m5 A5 {3 X
            break;, h6 W; D! ]7 n  P8 v4 U7 x8 G
        else9 _) S7 n, t/ V* R4 k" W% O
            w(d1)=l+1;4 o! i) U% z6 h# f9 L9 E0 c
            g1=g(s1,:);
    1 ?& H$ c6 J# p. y        g1(a1)=2;4 |4 X# L0 h& W5 `. w2 ?
            g(s1,:)=g1;
    9 o+ U$ D8 V. F; r        g(:,s1)=g1';/ L( m5 |3 b! G  ?. s# T* z1 V
            s1=union(s1,d1);' ^/ {% X. q0 O/ s  o9 p
            l=l+1;! K9 ?$ P4 e3 A% c$ p
        end: Z, P5 ^$ [4 `1 C- ^# ^* f
    end2 M; h$ r6 o  z. {  y/ b
        % M) b; T! G" A: C0 F) \8 @( P: w
    end
    ) Y; T8 C% V! z: r4 `: M( C  }# V) g+ d0 M0 |( p' y
    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 & m4 K1 z' ~( w; z9 A
    帖子里面的笑脸其实是: 和) 不知怎么搞的打出来了就变成了笑脸
    * a$ b9 `* x' G# p; ^% |
    这种情况在右侧点击“禁用表情”就没有了。
    数学建模社会化
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-4-11 13:55 , Processed in 0.444958 second(s), 68 queries .

    回顶部