设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1394|回复: 2

图的遍历程序——C写的

[复制链接]

该用户从未签到

尚未签到

发表于 2009-4-25 17:07:12 | 显示全部楼层 |阅读模式
文档文案
文档文件名称: 图的遍历程序——C写的
内容简介: 图的遍历程序——C写的
所属专业方向: 电力系统
文件类型: .doc
来源:

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
图的遍历程序——C写的
1 q$ B( J7 U7 }$ [用于配网潮流计算的

图的遍历.rar

5.58 KB, 下载次数: 14, 下载积分: 威望 -2 点, 学分 -5 点

"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

发表于 2009-4-25 22:23:50 | 显示全部楼层
学习了.谢谢
& j" r3 l2 h: @, F+ M) m+ k/*全局变量:访问标志数组*/
4 }, _: p) _$ X5 I! _4 k4 vint visited[M];
1 C5 j& ~" D6 M' V( i3 M; K- j/*访问顶点*/5 x! q# `, r! q+ _3 R9 q
void visitvex(Graph *g,int vex)! W& N+ |' ~4 I# G$ S) H
{
! Y% Z2 w: w# `  S' wprintf("%d ",g->V[vex]);7 J7 C# {9 i2 Y* @8 @) W7 y1 M
}
! u& L5 F, c0 d3 y% v8 N
2 U+ k. l" ^. H. N/*获取第一个未被访问的邻接节点*/
& X: `4 `# c4 ^! S; {int firstadjvex(Graph *g,int vex)  v) @3 D8 I$ Y. E7 x$ w
{# K  r+ e" Y+ V0 v
int w,i;
3 L  Q+ r% }7 [6 s& m  r. Q& Nfor(i=1;i<=g->vexnum;i++)- U' ~) ]2 {- |+ g" ~0 a6 Y8 C
  {2 x4 h8 g3 q# u  B( G. }" l
   if(g->R[vex][i]==1&&visited[i]==0)+ X: _+ B* e9 D' l8 m% y4 m
    {
( {- P( v4 ]( z7 u9 e      w=i;
  c4 j( u) c! ~3 `& Y2 M      break;
6 i& O( R- q; x- u5 V    }  v3 K$ x3 U( F$ J$ {% ?
   else& A  Z; t; ~1 [! ]
    {, b' p6 V$ H+ N0 Y0 n6 p
      w=0;
% W9 _) f  o( F% i8 @* r# y: \% V    }
* Y+ r6 M4 B  F; h6 Z2 q3 R  }3 c+ j- ~/ b2 x# ]
  return w;
/ Y: O" i2 m! E% A3 P. X) M}( ^- {' H% `8 u  v- s
/*获取下一个未被访问的邻接节点(深度遍历)*/$ B9 Y1 E* ]& J- b( p% A
int nextadjvex(Graph *g,int vex,int w)
) ?; k- ^1 [% w{
9 F5 z$ B" D' z: o1 y7 O  int t;
. z9 k5 M3 v) O/ \0 L  p  t=firstadjvex(g,w);" l) U8 G* h9 f, K# e/ t/ [
  return t;& e  p& @) j; a7 m  j) V: y
}" i* l. f$ F6 F% f1 E- w$ S
/*深度递归遍历*/
  N- `1 q" r/ ~) W& @  void dfs(Graph *g,int vex); t* d" ~8 s, n3 ~, d' q8 G$ O
   {
3 i) q* r( u5 H8 b    int w;
) ^# y( w2 R) b# |: z( H: {    visited[vex]=1;0 @! r' r; C( ^
    visitvex(g,vex);) e: A( Z" Y/ X# a- j/ K, ^
    for(w=firstadjvex(g,vex);w>0;w=nextadjvex(g,vex,w))
1 O+ k8 j# s' Z! }9 g$ _1 j      if(!visited[w])- `1 p3 y7 [$ `: J( u2 e0 D
       {
, l! z# }+ r% ]" mdfs(g,w);5 A( v1 U1 i! B: M, H6 \; z
       }1 c. y6 ~0 Q% O. j/ l7 h% G3 ]
   }- p4 B0 f( \7 a+ \' A7 G" R
/ G9 k6 `. {0 A8 Q+ m+ k2 j
   void dfstraverse(Graph *g)* O% p% p3 s! |) O# j
   {4 |7 d+ N, \8 f9 Z' t
     int i;
5 e3 I7 Y; h  w) h8 h     for(i=1;i<=g->vexnum;i++)
8 q5 j( t$ e1 _# S( p+ B       visited[i]=0;
: L8 ]- O& _. V7 o# `7 `     for(i=1;i<=g->vexnum;i++)$ k( [0 ]' F) L2 R
       if(!visited[i]): f6 J4 k& s8 v3 ?+ Y! N
  {dfs(g,i);}
6 [/ _% [, A6 T8 C- z   }
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

发表于 2009-4-26 22:13:11 | 显示全部楼层
谢谢楼主, 我想问下您对怎么学习电力系统编程有什么意见吗? 这方面的资料好像很少
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

GMT+8, 2026-11-15 21:25

Powered by Discuz! X3.5 Licensed

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表