数学建模社区-数学中国

标题: 每个节点的生成树数目程序 [打印本页]

作者: xiangpeng395    时间: 2014-8-30 15:53
标题: 每个节点的生成树数目程序
  1. c=[1 1 0 0 0 0 0;- ]0 F! B* {# I: P, ]
  2. -1 0 -1 1 0 0 0;7 G* t- ]9 G. Q1 f* ]# y
  3. 0 -1 1 0 1 1 0;+ d# Z1 F7 m2 U0 {
  4. 0 0 0 -1 -1 0 -1;% e3 k( ]( ^8 K# v. c4 J6 [
  5. 0 0 0 0 0 -1 1 ], |4 z: O( J3 _$ `$ d# o1 I
  6. for i=1:50 _4 @6 I% }% B
  7. a=c;; S* v9 V0 C8 `4 q  v2 O  e% m+ v8 h6 L0 E
  8. b=a(i,:)" t" P# Q+ h* U" g" e4 g
  9.      for j=1:43 ~9 n: }4 s$ Y& \' ?9 [
  10.         b(i,j);* e+ G& H0 z% _& T% p! k
  11.             if b(i,j)~=0, t: d6 p/ b7 Z
  12.                a(:,j)=[]( C1 f# j7 G/ z* p3 M( T% E/ f- P
  13.             end. n" _. y1 B3 s4 f4 f( C8 M3 K, f# Y
  14.      end
    ) t1 J8 O/ Y' R6 Z
  15. a(i,:)=[]
    , K7 s% ~9 j9 U0 B( W
  16. end
复制代码
为什么总是超出维度啊
! w! n  Y  i7 Z/ k我想求出依次删除某一行以及与该行中非零元素的列,然后求det(a*a'),并输出结果,怎么搞?求教大神们!, S' p, W1 B/ d2 S2 j
/ P6 G+ }7 \2 _$ Y3 o

作者: madio    时间: 2014-8-30 20:26
  1. c=[1 1 0 0 0 0 0;
    + N/ }# M- X" N" T
  2. -1 0 -1 1 0 0 0;5 ~  V) o( g- Q
  3. 0 -1 1 0 1 1 0;- s$ I2 P  d" b) s# a. U0 K6 G
  4. 0 0 0 -1 -1 0 -1;! F5 o7 ]& ?; g$ G8 L
  5. 0 0 0 0 0 -1 1 ]
    ! u+ u7 x; j0 U; p) K0 q
  6. for i=1:54 C$ q* r8 |6 q1 J7 f6 n
  7. a=c;3 Q6 e2 Z9 |* ~; O
  8. b(i,:)=a(i,:)
    6 Y" H) t: T$ o* n
  9.      for j=1:4
    7 ]/ n; |$ i( x% Q  k
  10.         b(i,j);
    3 c( t( p4 y1 o  \) Y* G' R
  11.             if b(i,j)~=0( m) z" [  L* C. x/ E. ~) M9 q
  12.                a(:,j)=[]0 w0 G/ F8 ^! W
  13.             end1 d3 }2 L; G1 I. Z% \* R
  14.      end
    + {; p( ]! h* @
  15. a(i,:)=[]. Y1 a! P1 V. M  X" L
  16. end
复制代码
改成这样的就可以运行了
作者: xiangpeng395    时间: 2014-8-30 21:07
madio 发表于 2014-8-30 20:26 ) Q! e4 v/ D8 {. W5 P, p
改成这样的就可以运行了

2 u* W$ A0 O# W" q5 o# v不好意思,我给j的赋值搞错了,j=1:7,我运行了下,还是维度有错啊,怎么办
作者: madio    时间: 2014-8-30 21:15
你这个删除代码写的有问题,不能这样实现,我给你改了一下,你看看结果对不对。
  1. c=[1 1 0 0 0 0 0;
    & y! B  H9 Q  o/ e. z
  2. -1 0 -1 1 0 0 0;
    % ], ?$ {3 T/ |, f+ t
  3. 0 -1 1 0 1 1 0;
      v( l# \  ?" a( \3 M1 t
  4. 0 0 0 -1 -1 0 -1;
    1 y! @% \: ]7 n# p
  5. 0 0 0 0 0 -1 1 ]
    , p3 b, x: \- u( k7 A
  6. for i=1:5
    5 y8 P# k0 g7 \- P- C
  7. a=c;
    4 ^7 D( H4 u2 S( T! C
  8. b=[];; r* y/ ]6 D+ [1 D, ?
  9. del_col=[];
    ; _+ j3 E& u( H$ @
  10. b(i,:)=a(i,:)
    . p, j$ y9 \8 D4 f
  11.      for j=1:7
    " T& l; K, b. ?2 {) V' U% X' I
  12.         b(i,j);7 c* f3 q% q* L
  13.          if b(i,j)~=05 r6 j2 T& ]/ Z
  14.            del_col=[del_col,j];
    $ V! j" o1 {& \
  15.          end( P. J" ]- ~9 b
  16.      end
    / B% ]# S5 u8 S9 X
  17.      a(:,del_col)=[]
    0 b7 T- _# U) v2 ]; @: l1 y9 [
  18. end
复制代码

作者: xiangpeng395    时间: 2014-8-30 21:22
madio 发表于 2014-8-30 21:15
8 ]( M+ R* W! e  k& u* G你这个删除代码写的有问题,不能这样实现,我给你改了一下,你看看结果对不对。
  [. q2 R, f% R; h/ E5 s1 ^
好的,谢谢了,
作者: xiangpeng395    时间: 2014-8-30 21:27
madio 发表于 2014-8-30 21:15 7 o% O) z, D8 A8 O7 I
你这个删除代码写的有问题,不能这样实现,我给你改了一下,你看看结果对不对。

- E( ]2 M3 ?: [, R  O可以了,就是没有删除对应行,我加了一句,现在可以了,十分感谢!!!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5