QQ登录

只需要一步,快速开始

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

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

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

9

主题

7

听众

188

积分

升级  44%

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

    [LV.6]常住居民II

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

    群组西安交大数学建模

    群组数学建摸协会

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

    跳转到指定楼层
    #
    发表于 2013-3-3 14:54 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    2体力
    function [nc] = ncutf(g)& L, G( z6 r# T( m% C1 @
    %求割点的算法 g为邻接矩阵 nc为割点的集合
    ! O+ ?" W* r' F) }! h; _5 \n=size(g,1);
    : Q. X# m5 b* n: Y9 h, x' ]5 Vif n>=3
    / B* z7 m: r) E' F    a=sum(g);
    7 U( u9 q9 w. l7 Y2 g( \$ {1 n4 _    b=sum(a==2);
    9 Z* k! w8 j$ O6 G    if b==n
    9 m( U! A) g$ ^- n& {8 x$ l7 g        fprintf('本图为圈,无割点。n')" }. C) y8 ~; k- X8 b
            nc=0;8 i8 U! k' r6 O0 S; d
        end
    & ~+ h" ~; B6 p% Lelse
    3 X( D( L9 S; P1 b! @2 f    [w,k]=dfs3(g);# K: s  S& I; U( |9 d8 r
        %nc=[];
    5 M/ u3 A4 x# L' [2 X4 ?    nc=isncf(w,k);
    9 l' z4 d& e3 J0 h5 Z5 m9 z6 k1 h    n=size(g,1);
    6 h' ]! ]; ~' `1 F( i6 @( `    for i=1:n! ?* P8 s8 p: ~* F5 b$ f& G7 V6 w& l: c
            for j=1:n
    ) N: d& T, D# n- J5 S; s: l            if w(i,j)>1
    : z7 ^- Q3 {  q- M& f                if k(i)>k(j)
    7 s+ A, G8 @2 i: `* d                    g(i,j)=2;
    - x2 W7 x( X: j% L! t                else; t4 v) ?: `  o' R- i: E7 O) w9 C
                        g(i,j)=3;" U. j/ W; a  b
                    end
    6 n: o: G" s* h9 b$ B& H            end- [9 }9 A- D, P5 J0 |4 G
            end1 w! R' X, H! C$ I
        end
    ' j% H& f6 E8 R- s4 W+ j    / K: L. C/ q' n
        for i=1:n
    4 }. v; G: a4 I        f1=find(g(i,==2);. H) I9 B" }" M  J% t& `1 a
            f2=find(g(i,==3);' K+ ?, m' G- W8 r$ ?( z% _
            f=union(f1,f2);* l1 c8 o* i1 ~" y
            l(i)=min([k(f) k(i)]);5 g8 d: G/ _& C8 E
        end
    $ r6 a/ @& _2 b5 }5 e) w. o2 l    2 z- s% t$ m4 h4 E3 P7 T# m
        for i=1:n
    4 e; Q- B/ @$ z2 I5 \2 F/ B7 K( ?& W        for j=1:n) {) y" I4 s3 \
                if g(i,j)==3 & k(i)>1&l(j)>=k(i)
    , g9 i4 Q6 g" W2 R* G* @4 w                nc=union(i,nc);2 w- a  t$ Y) y+ b( ]- p, ^% o
                end
    ( p% ?% y1 L9 V/ ?/ f        end: ]+ G- }" g( i& e
        end4 e1 h% @- C: ]
    end" a1 ~8 W8 q" ~% w; k$ S) ~& r  a
    end$ G/ g% w+ P/ V$ f

    # f& D  N- ?- L* i# l) v. L' b* q& h% L0 C8 J. l) N" d
    function nc=isncf(w,k). n" w* Q1 B( O
        nc=[];1 y8 N) _3 |) k  z: S
        t=zeros(size(w));" o) U7 |) G2 G; ]
        n=size(w,1);* s+ g  e# k  Q4 h. \$ B5 q
        a=find(w~=0);
    3 P) l5 |( U' P4 W    for i=1:length(a)5 w8 O+ W! B* g. P; D
            d(i)=w(a(i));2 o: D; X% q3 z! v6 s
            if a(i)/n>floor(a(i)/n)
    % t7 j  ?( B7 S4 B' }' F. k# J          t(i)=floor(a(i)/n)+1;
    3 A+ j6 z, o: I- d" K" L        else: |5 c- c; r0 S2 b/ w
                t(i)=floor(a(i)/n);
    ! i: I7 D0 w5 U* J% |! x/ c4 W' b        end7 p" [  u0 X' }  \9 t6 j9 M
            t1(i)=mod(a(i),n);) z+ f( Y, C# c1 m
            if t1(i)==0. J, i0 I( |0 ~: E: }
                t1(i)=n;5 @3 t% s3 k2 f8 ^
            end) |. |& H( S: F  y. p2 R2 P
        end) O1 {9 l, A. q6 F; d
        [b,c]=sort(d);3 S& E2 |5 i/ v* O4 G
        p=[1];pc=0;: n1 h, g7 }. e' _' a5 x
        for i=1:length(a)
    $ ^4 @% b) y" C# A        if k(t1(c(i)))<k(t(c(i)))
    " P5 X# h: f" v  Z            p=union(p,t(c(i)));
    ; ~0 o4 E4 {* U5 I$ H) t$ N/ p- v            t(t1(c(i)),t(c(i)))=3;
    5 p2 j/ r/ T/ A. v! J. c        end6 C- J( i1 z' _# @7 r
            if pc==0
    ' _( o) q+ U1 ^            tc=isempty(setdiff([1:n],p));/ L; V3 z0 F, V) q- U, C
                if tc- u" [; z, a  A; G% K9 R. e5 `* S) [4 q
                    t0=sum(t(1,==3);1 k' s3 |6 Y/ U2 B! J. A
                    if  t0>=2$ g, v4 O* z3 I% a
                        nc=union(nc,1);4 N( R3 ?' e# V0 F! C
                    end9 H: @% y8 k3 T0 z
                    break;
    7 b0 n& ]+ b# r. b2 k: p" _            end
    7 r% J1 d- i! b0 S3 S2 c, E. P        end
    $ l( G6 J' A! T  Z, c* {    end: ^  O% C: {- ?2 F/ w
        6 V* l  j- i1 l
            0 f0 N4 e& o6 W* Z+ U4 x
    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-9-10 02:32 , Processed in 1.388917 second(s), 60 queries .

    回顶部