QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6595|回复: 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)
    9 ?. F9 U2 ?$ ^# m8 B% K4 `4 b0 b%求割点的算法 g为邻接矩阵 nc为割点的集合1 V8 b6 [2 l- A, v' V
    n=size(g,1);
    , w/ ^& `( a  Mif n>=3% }; ^8 u* [3 }' P% E- j0 O
        a=sum(g);& A( H" ~5 K9 I
        b=sum(a==2);6 [4 O0 f$ I  |; I
        if b==n( C0 G3 ~) j! _3 L
            fprintf('本图为圈,无割点。n')0 }% H: S8 h- J: C
            nc=0;2 K8 t" h0 C& N! t/ A* @
        end
    6 J. r" h! m0 b) Relse) Q1 _( v. ~* F1 p: l
        [w,k]=dfs3(g);
    . p1 w3 B. ?  U( M& X, f3 n    %nc=[];
    , D6 B5 B4 \& y+ G9 C- Q    nc=isncf(w,k);
    , Z2 M4 }1 I7 X' g, ?6 j    n=size(g,1);
    ' X3 N9 q! c# q5 h7 J    for i=1:n
    2 T+ c* \. z1 i, T. S        for j=1:n
    % e0 U. j9 v2 a1 n7 I' C2 I2 L            if w(i,j)>1
    3 \# ~, f% m; G) q8 {1 u                if k(i)>k(j)
    8 d! Q( T# k1 v, l6 v5 b- t6 n                    g(i,j)=2;0 ?  o. |) I0 \) ^4 J
                    else
    : f4 u3 {+ B( [. u; O+ F                    g(i,j)=3;
    + K) P6 C! ?* `! q4 V, {                end
    2 l) B2 a, F4 j2 S8 Z2 j            end- f' M+ I* |/ j8 d+ _
            end
    - y$ I& b( n! m; R) L. M* E    end' m2 M4 M1 ]2 g0 Q& A  t- q
       
    9 R/ D+ ^# g4 [6 A    for i=1:n
    : v6 ?0 V5 _$ C# M* i8 h: q" B* b        f1=find(g(i,==2);
    : U' }1 c5 f9 U' q9 s8 ^' \' \        f2=find(g(i,==3);$ I6 a( g1 U# U2 n" U
            f=union(f1,f2);
    # A; [1 i" G' V( K4 b: g        l(i)=min([k(f) k(i)]);& m% g2 z; c0 n1 F! _$ D
        end. C- D' ], S* |% o# y
       
    7 s5 `# y) u$ Y7 w' L- ?( p    for i=1:n# P/ H( S/ g- S& }- _6 k* G$ I
            for j=1:n( y2 q, P# k. E  d
                if g(i,j)==3 & k(i)>1&l(j)>=k(i)
    ! Q- V* b# ?- q/ L3 j                nc=union(i,nc);; n' t; F# t0 l5 ?8 _
                end6 }6 {$ _1 j0 L5 l5 @' {8 L
            end
    7 O1 e1 @  }) u( t# W- d: {    end
    . K; m$ t0 u* Q+ B+ hend1 |% s& X- P) r/ ^
    end
    * V. R4 [- Z# y9 b% s* o. g0 H' X" p( b2 n! E

    3 k7 a' X& N0 C: v9 n! _0 C9 [; T& pfunction nc=isncf(w,k)
    / j: u' l- d# g. P! N, g- p/ i    nc=[];9 m4 W, Y: x+ C& X- h3 v
        t=zeros(size(w));
    - _: R7 @# @3 {    n=size(w,1);1 j* N& \2 `: H/ ~! ]9 }" L
        a=find(w~=0);
    9 i+ Z3 Y: N: ]! o$ N+ V    for i=1:length(a)
    - L; |, h4 O! F0 I+ l' H" j        d(i)=w(a(i));
      p! j1 r9 _: e' w        if a(i)/n>floor(a(i)/n)
    * [4 T! g5 J  J; ?          t(i)=floor(a(i)/n)+1;. K  G9 Z( ?5 {8 B" E6 P8 t/ u4 \
            else2 Z- v) @2 p  ?* h$ F
                t(i)=floor(a(i)/n);) \9 A3 d4 n1 u3 N# p, V
            end& T% N. F, q- @( U$ f8 _  \/ P
            t1(i)=mod(a(i),n);
    / U" W; z& }& z( i        if t1(i)==01 `, D7 j) N/ ?! Y1 V' Q( J
                t1(i)=n;5 c+ ^3 k, l! s/ q+ g( ]) W
            end3 T% F  v" k* P
        end! S7 f: U. ?! B6 n* d4 u
        [b,c]=sort(d);/ u2 u: |1 j7 {6 `" a
        p=[1];pc=0;
    . I% ~7 t/ ^3 C! D, S( C    for i=1:length(a)
    ( c, [8 x( b; G5 n, [        if k(t1(c(i)))<k(t(c(i)))
    ; v! E. g; N6 n% o& g            p=union(p,t(c(i)));5 c5 ^" p+ t" g' p
                t(t1(c(i)),t(c(i)))=3;: T4 v! W5 W7 A+ S" D2 X* T
            end, J8 O& E5 a  c) O
            if pc==0  Q6 X5 W2 ]% C5 {, E4 h4 m
                tc=isempty(setdiff([1:n],p));1 E1 P3 |" V* b: S; h- E
                if tc
    ' J) ^4 w3 V7 F9 C                t0=sum(t(1,==3);
    9 t& |8 k. w+ A  O& ?                if  t0>=2
    3 c2 z$ p8 T/ g- Z                    nc=union(nc,1);
    * p' H& U9 R4 Y; y6 \) Y* N9 n                end* B7 f" j9 a+ d  l4 b8 C, |6 R
                    break;
      K) y# g3 a0 l1 B2 F            end
    % X7 [, f* s9 W6 L6 P. _        end
    8 U; H  Z2 ~* B    end6 A( Y/ J+ P" b0 H
       
    ' y7 F# O# Y+ w* g0 v; x7 F        
    5 d! e9 P' f$ |/ ]8 |3 E$ D1 o( uend

    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 01:21 , Processed in 0.606071 second(s), 58 queries .

    回顶部