QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3187|回复: 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))是同一个意思?9 }0 a. U4 e% a  w" x
    我个人理解,g==1除非g是空的,否则g==1都会返回一个逻辑矩阵才对啊,不会变成空的。
    8 h# R. l1 K' J& `& |function [w] = bfsf1(g)
    . }/ e  U+ q% t%广度优先搜索" v6 B: w1 B4 n7 y: M) P3 I
    %g:邻接矩阵。w顶点标号# Q6 f$ y4 }1 ?% L. B
    n=size(g,1);
    5 i4 ]0 J7 u7 k& l% Uw=zeros(1,n);! m; X9 B+ f0 L( z+ b1 c
    l=0;* L6 A5 O* }0 i# ^
    v=1;
    4 d; y  ?% N4 G) t" @( R8 Y/ J; z' na1=find(g(v,:)==1);
    / n1 t2 V" W# f+ og(v,a1)=2;
    ! A7 t2 `7 E6 }# n2 mg(a1,v)=2;
    + G2 ^$ B/ p: J7 l& s; |6 i4 l5 Z: }w(a1)=l+1;
    3 i8 D: z3 \% [0 O9 n! f* Q+ js1=union(a1,v);8 v: C, j- W2 p* x) e" O# x& |8 h5 [
    l=l+1;* X+ Y/ y3 O) k$ C. m
    while~isempty(g==1)
    % W7 `9 ^/ y1 T   a1=find(g(s1,:)==1);) u# u; @' f( ]# \
        t=length(s1);
    0 r2 u. e3 W+ e/ ~    d=[];2 d$ G: K. |5 I1 W  p4 t; |1 L3 `
        for i=1:length(a1)
    , x/ O4 ]; O2 x- X# @. F        if a1(i)/t>floor(a1(i)/t)
    # K( q2 Q) @; y4 Y& k# n- B6 Y: f            t2=floor(a1(i)/t)+1;' @0 s3 a. c9 J% h2 M
            else3 R* C& ~3 ^' F2 k. ^
                t2=floor(a1(i)/t);( D/ l! l4 r, [
            end4 G" x6 X% e! E0 S7 G" ]
            if isempty(intersect(d,t2))
    * J6 q3 f2 c2 @% X) X4 M            d=union(d,t2);( M4 c* ]( y( D/ D, }6 v, z7 j
            end
    2 K4 f0 ]2 m* {) u  P5 f    end
    7 c. F4 e- B: h+ K. D    d1=setdiff(d,s1);
    ' @' _! `3 [) ~# _    if isempty(d1)) S5 i7 E; c7 w( f
            break;
    2 a  W2 P/ R4 V1 l1 `8 t    else5 j* J  o1 e1 G' q- @8 @  v
            w(d1)=l+1;
    4 f# g8 p. V/ ?# _        g1=g(s1,:);. |+ @+ s: F- o4 b# ~$ Y9 ~
            g1(a1)=2;/ `: z% a1 i* M+ H% P+ g' _! d: [
            g(s1,:)=g1;! P5 D. Q6 o5 T) e1 E% L
            g(:,s1)=g1';$ _, K( s; M0 h! u% W* j
            s1=union(s1,d1);
    # x; x7 G# D. t& }9 w  X        l=l+1;( e% q% G! N8 J2 R0 p
        end6 |& h) B& T2 k/ t
    end9 V6 v4 Y: {4 |$ Y- E
        " d. T+ `& Y5 L2 x& P) o
    end. A9 [" N0 b9 E
    1 k  \- p2 J" j
    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万

    主题

    1310

    听众

    5万

    积分

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

    [LV.Master]伴坛终老

    自我介绍
    数学中国站长

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

    群组数学建模培训课堂1

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

    群组Matlab讨论组

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

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

    ganquanlife 发表于 2013-3-2 17:04 ) L% r9 i% V# D4 A/ a
    帖子里面的笑脸其实是: 和) 不知怎么搞的打出来了就变成了笑脸

      Z) K( z" `: V4 ]2 `2 C这种情况在右侧点击“禁用表情”就没有了。
    数学建模社会化
    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2025-5-2 04:29 , Processed in 0.517860 second(s), 67 queries .

    回顶部