QQ登录

只需要一步,快速开始

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

[问题求助] 求助关于求图割点的代码,哪里错了?怎么改正啊?

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

9

主题

7

听众

188

积分

升级  44%

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

    [LV.6]常住居民II

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

    群组西安交大数学建模

    群组数学建摸协会

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

    跳转到指定楼层
    1#
    发表于 2013-3-3 14:54 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    2体力
    function [nc] = ncutf(g)
    + j. `. E& ?% G% v( }%求割点的算法 g为邻接矩阵 nc为割点的集合* w+ T3 ^. _  G/ X7 n- ^0 @
    n=size(g,1);! r: Q) J, ^: `3 |. R
    if n>=3
    1 W) m/ D$ `# U& d& C# _    a=sum(g);
    ! r: R' K- b  V+ Y. b' U    b=sum(a==2);: H/ U, d9 d1 G
        if b==n* U9 o4 Y9 C; \! v: G  G
            fprintf('本图为圈,无割点。n')# c( S  O' k$ S0 v2 [+ K
            nc=0;
    9 R% C) Y* T( f7 E" }6 v) S    end$ @4 F! ?) z5 F
    else
    : k& n! S) m* [) `, u# T9 |    [w,k]=dfs3(g);! C6 Z. d3 H% v
        %nc=[];% Y: b3 e: t6 u* g
        nc=isncf(w,k);
    - T) P, @, g0 C: |. ]( c! R) o    n=size(g,1);
    + W! _9 m) ?( D8 y* {    for i=1:n$ x- P5 n  ]0 E3 ]' d4 A
            for j=1:n
    * r2 g# I( ~) @2 S- `            if w(i,j)>1- m& E9 {$ `3 S. l
                    if k(i)>k(j)  b) X% n! v1 R# v& F9 t  p! r$ K+ U
                        g(i,j)=2;9 }1 Q' n, [( w' S) i
                    else; ^/ Z( ~) u  E- X9 @
                        g(i,j)=3;
    3 W7 w5 L: |5 @, ~" j2 l5 v                end0 S/ w0 g: b1 k7 L' t
                end: G) d/ ?4 N- S9 y# H8 Z
            end, S/ ]) H% o/ w6 i* h( c
        end, Z3 v- |/ n0 _
        , {+ e- \% w2 {; F" |
        for i=1:n
    . O! J) `! I- x: w, s- O( ?1 |: i" p        f1=find(g(i,==2);
      H4 h* Y! y" r5 {8 d1 {* K        f2=find(g(i,==3);% x% B, R' ?, o7 w" @" z0 V) h
            f=union(f1,f2);
    # c* N, ]% X! e) }! G        l(i)=min([k(f) k(i)]);
    $ s7 ]2 p+ {2 M: c7 M. f    end
    + k) }3 A2 B, F% b# o9 N    3 z+ L8 M7 ]- \% {/ V4 u7 v' Y# F9 F
        for i=1:n  P  D: K, Y; A  e6 Q( V
            for j=1:n9 C0 U: E/ T# }5 n
                if g(i,j)==3 & k(i)>1&l(j)>=k(i)
    2 F+ p- l9 ]% y/ T* Y) a                nc=union(i,nc);
    ( K+ U! E( o+ e" q9 I8 v' d            end
    ( H# O9 l/ F3 l' y% i! F! g        end
    : H$ D+ z) ^+ G6 j2 X8 d$ c    end
    ! u/ b  _8 X9 X: f; L, _end
    0 F7 U; ^; b- v, E& a3 h' Cend
    , [& B" b- U( H: z' H- V9 o0 ?' C  o  J# W* R5 r9 C  J; b; |4 A

    ' O; f1 |+ V, n4 V6 wfunction nc=isncf(w,k)
    " a- b8 i: W. ^9 Y    nc=[];
    - m  L) Z* `5 Q3 Z8 }9 m/ r    t=zeros(size(w));
    ! `! `! W) S0 f- }& m4 E" H    n=size(w,1);
    + D% ?0 @9 ~3 @/ R! e    a=find(w~=0);  c" |) T) P$ N0 A. R
        for i=1:length(a)
    , }. x7 ~$ K7 e( g, q! I8 ?2 G  {        d(i)=w(a(i));
    6 o/ d$ s, H- P+ ]3 f! w5 D        if a(i)/n>floor(a(i)/n)
    ; m2 g# v2 X. t          t(i)=floor(a(i)/n)+1;% F4 b+ I* Z4 X+ [
            else
    . w( X# ^* b. F5 S# W            t(i)=floor(a(i)/n);
    / q% i- h6 Y& F        end
    + ~  r/ ]- w' B$ x; i        t1(i)=mod(a(i),n);
    2 z: h6 g0 S2 `  x# P0 K. b4 [5 |        if t1(i)==03 d8 P/ W9 @" w
                t1(i)=n;* Z+ Z0 c  Y7 K% `9 @# s2 ~
            end
    9 |! q) K6 {& i3 N4 X3 J2 r5 ^    end5 e; G! W# U! Z8 @; w
        [b,c]=sort(d);
    0 I% m  ^6 b$ D$ Z; c    p=[1];pc=0;6 C# c- Z2 q6 @  p
        for i=1:length(a)
    5 e/ }! g6 c* u* b; s$ v        if k(t1(c(i)))<k(t(c(i)))
    & M1 i7 c  a2 d            p=union(p,t(c(i)));
    # Y. [% Y' h0 n# T8 Y9 W; M* k            t(t1(c(i)),t(c(i)))=3;% T3 j' X3 T* }- W% `5 ?& ]* I
            end
    5 v1 V+ }1 Z6 R5 m! {. o) s        if pc==0
    8 L% O7 l- F3 B' Y( S  L- L            tc=isempty(setdiff([1:n],p));
    1 F9 j) [2 ^3 Y5 \& [            if tc7 R( u" C- O& _
                    t0=sum(t(1,==3);' L# m- Q3 y. S* D& R8 ^
                    if  t0>=2
      X. R7 o- S0 o: Y3 ~$ E                    nc=union(nc,1);5 c% |9 y5 q! \/ b
                    end5 Q4 ~4 c0 z( E6 a
                    break;0 y& U1 @% }2 N9 t& o
                end
    / k' V; {% D6 d) [8 [        end
    - M# P( a% a8 V$ a9 {* P    end2 c. I$ }) N9 Q* k9 j9 V
        7 n5 _4 ]' D0 s
              w/ M- E7 U: P& K- u; G
    end

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    9

    主题

    7

    听众

    188

    积分

    升级  44%

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

    [LV.6]常住居民II

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

    群组西安交大数学建模

    群组数学建摸协会

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

    回复

    使用道具 举报

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

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2026-4-21 13:24 , Processed in 0.501598 second(s), 58 queries .

    回顶部