版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构与算法Chapter10图--1图的基本概念一个图G=(V,E)是一个由非空的有限集V和一个边集E所组成的。若E中的每条边都是结点的有序对(v1,v2),就说该图是有向图(directedgraph,digraph)。若E中的每条边是两个不同结点有序对,就说该图是无向图,其边仍表示成(v1,v2)12435678顶点边3124356781{v1,v2,v3,v4,v5,v6,v7,v8}{(v1,v2)(v1,v3)(v2,v3)(v2,v5)(v2,v4)(v3,v5)(v4,v5)(v4,v6)(v4,v7)(v5,v7)(v5,v8)(v6,v7)(v7,v8)}无向图图的表示12435678有权图9060120502004011016070758018012435678顶点弧1{v1,v2,v3,v4,v5,v6,v7,v8}{<v1,v2><v1,v3><v2,v4><v2,v5><v3,v2><v3,v5><v4,v6><v4,v7><v5,v4><v5,v7><v5,v8><v7,v6><v7,v8>}有向图完全图:n个节点的图中,若是无向图,有n(n-1)/2条边;若是有向图,有n(n-1)条边。权:图中边或弧上的值。邻接顶点:有边或弧相连的顶点。顶点的度:顶点所连接的边或弧的数量,称为该顶点的度。指向顶点的弧的数量叫入度,由顶点出发的弧,称为该顶点的出度。图的基本术语路径与回路:邻接顶点所形成序列称为路径。路径长度:无权图上,路径上边的数目称为路径长度;有权图上,路径上边的权重之和为路径长度。回路/环:如果路径的起点和终点相同,则称此路径为回路或环。简单路径:路径上无重复顶点的路径。连通:若图上两个顶点之间有路径,则称为这两点是连通的。连通图:若图上任意两点都是连通的,则为连通图。非连通图:图上存在节点之间不连通的顶点,则为非连通图。连通分量:非连通图的极大连通子图称为连通分量。图的基本术语图的操作图的建立顶点定位取顶点值求顶点的第一邻接点及求下一邻接点插入新顶点及删除顶点插入一条弧或删除一条弧遍历图(广度优先/深度优先)图的表示—邻接弹矩阵设图G严=待(粒V,昏E筛),V栗=枝{宴0,1,…,n-窜1绩}则表侧示G的邻接唯矩阵A是其茫元素梨按下警式定康义的n*n矩阵:无向灵图:有向俗图:带权童的有培向图添:V3V1V4V5V2G2V1V3V4V2G101100000000110000101010101010111010001100126543545983516∞3∞∞∞1∞∞5∞3∞∞∞∞4∞∞98∞∞∞∞6∞∞5∞∞∞∞∞∞∞5有向贪图G1无向串图G2有向网311例:图类坝型变惜量:Mg谊ra亭phG寺;顶点茶个数袄:G.宿ve薪xn盯um弧/边的里个数共:G.奶ar吸cn秆um图的类培型:G.档ki餐nd=(DG姓,D载N,示AG季,A巡寿N)顶点i信息找:G.厕ve社x[i索]顶点i和顶小点j邻接勤关系乓:G.棉ar报cs[i娇][具j]皆.ad墨j弧/边附锐加信倦息:G.宋ar悬cs[i桑][好j]思.in钞fo12Ty果pe撑de缘瑞fst毙ru扯ctgr附ap刮h{TNo膛Ed除ge;in休tVe打rt储ic附es沾;T竖**杨A;}G钉ra呀ph清;Vo宾idCr索ea微te僚Gr露ap根h(G漠ra停ph赚*抄g,in货tn,摸Tno或ed脸ge){in粘tI,棋j;g-苦>No誓Ed帜ge=no绵ed僚ge;g-扶>V云er鲁ti诱ce浴s=赞n;g-绒>A充=(果T*豪*)ma席ll津oc(n购*si键ze厌of(T惰*)伴);fo节r(筋i=青0;雄i<n;宣i++粘){g-辩>A喝[i左]=防(T围*)ma描ll畅oc(n季*si冷ze现of(T近))份;fo有r(就j=患0;恼j<n;梯j++基)g-慕>A沉[i倡][遭j]制=no队ed信ge;g-彩>A兔[i咐][虽i]啦=0炊;}}建立让邻接竿矩阵BO仙OL诱A牛dd晒(G把ra恶ph砖*既g,in导tu,in达tv,枯T探w布){in驰tn=血g-圾>V扑er蛛ti幸ce考s;if服(u艇<0牲||仅v<靠0|杯|u托>n伯-1水||舰u=煮=v后||凝g-层>A券[u挤][诊v]拣!=起g-绍>No航Ed毫ge){co放ut<<之“B猴ad具I勾np划ut阻”;影r走et松ur障n肉FA得LS傻E;}g-竹>A壳[u络][皱v]顿=w庸;强re职tu打rn驼T项RU纳E;}BO饿OL趁D蜜el汗et怖e(或Gr义ap今h*g且,in凡tu,in险tv){in致tn=达g-辽>V磁er捐ti谨ce戚s;if骨(u做<0盘||立v<印0|城|u窑>n构-1港||遇u=歉=v短||舅g-肃>A悟[u售][元v]=伯=g-长>No参Ed棉ge){co仅ut<<瘦“B炕ad登I判np黄ut凡”;抵r叠et棍ur庸n仁FA斥LS厦E;}g-狠>A陈[u丧][愁v]=g-贝>No渗Ed鲜ge;re穗tu屑rn缝T介RU妖E;}BO味OLEx味is伞t(裂Gr沫ap笔h*g顷,in逃tu,in饥tv){in棍tn=要g-活>V珍er甜ti堤ce系s;if据(u稍<0改||竹v<房诚0|丈|u绪>n事-1皂||这u=挠=v封||订g-贱>A付[u盈][贩v]军!=望g-高>No案Ed你ge)re帽tu游rnFA押LS吴E;re局tu存rnTR搂UE铁;}插入糠、删远除和尼搜索慢运算图的表示—关联素矩阵关联扩矩阵抱用来膜表示先图中伶边与妇顶点言相关昌联的探矩阵睬,有肾向图G=(V,猜E)的坝关联寺矩阵嫌是如械下定葬义的n*m的矩特阵图的表示—邻接捆表表跃示法为每叉一个怖顶点迷建立籍一个谦单链次表单链表探中的辈每一镇个结恩点指稼示u的一勉个相院邻结忌点Adj缠Ve典x表示u的一宁个相恼邻结昨点,Ne男xt草Ar轻c指向u的下套一个堆边结午点,In壳fo用来袖存储软边的帅权值顶点结村点中至,Da离ta用来固存储升相关征信息览,Fi碰rs世tA皆rc指向u的第蝇一个菌边结雪点AdjVexNextArcInfo带权的边结点DataFirstArc顶点结点v1
v2
v3
v4
2130^^^有向图G1邻接表0123无向奋图G2邻接盐表v5
v1
v2
v3
v4
314243202101^^^^^01234V3V1V4V5V2G2V1V3V4V2G1Ty冠pe仪de才fst扮ru挺cten持od朋e{in房诚tAd境jV师ex;T冒w;st京ru番cten哗od寻e*Ne株xt诸Ar六c;}Typ上ed挤efst棋ru渡ctgr喷ap丢h{in伞tVe关rt兰ic夫es亚;EN赶od粱e**祖A;}G熟ra糕ph勤;Vo防idCr子ea胃te脸Gr尼ap枕h(G流ra黑ph盲*搏g,in也tn){in抱tI;g-可>V掘er姑ti柿ce些s=林n;g-炒>A适=(En谈od衰e**柴)ma音ll荣oc(n撤*si辟ze仅of(En诸od眨e*)排);fo沸r(研i=快0;摇i<n;钳i++摘)g-浇>A览[i撕]=业NU雪LL芦;}建立现邻接凳表18En断od宏e*Ne炮wN断od犬e(in功tve想x,系T尸w比ei眯gh混t,En秋od杠e*ne遇xt特ar偶c){En柿od牺e*p耐;p=诞(En踏od怕e*)ma嫌ll暮oc(si君ze胞of(EN蛇od袭e))脾;p-毒>Ad炎jV愧ex=v番ex须;句p-伐>W泄=w略ei辟gh秒t;p-拔>Ne折xt陪Ar茄c=ne储xt泉ar惠c;re倦tu看rn慢p椒;}BO疾OL刮E浮xi脊st陶(G错ra虽ph备g俱,in伴tu,in适tv){in峰tn;En捡od仿e*p朝;n=g.滑Ve仔rt修ic别es;if乐(u渗<0犬||角u>鸡n-贵1)司r遍et抱ur勒n押FA尿LS击E;fo的r(裳p=g.已A[u搭];任p线&&君p-导>Ad恢jV咽ex!=较v;斥)帮p=赶p-浩>Ne骡xt放Ar粘c;if降(!讽p)榴r北et泪ur顶n错FA张LS吓E;re鞋tu垫rn获T倡RU惨E;}操作雨函数BO林OL物A先dd絮(G该ra库ph外g兆,in绒tu,in经tv,陵T狱w呀){in予tn;En刷od视e*p尚;n=g.地Ve威rt辜ic层es;if膝(u丸<0我||繁u>暮n-际1|拿|v并<0徒||腹v>抽n-小1|倚|u滥==桶v|炭|E割xi今st请(*g,筒u,末v))耻{co崖ut<<俱“B堡ad蠢I锦np拒ut抄”;捕r候et签ur宇n贴FA丢LS稿E;}p=Ne拥wE通No管de(v,涨w,箱g->许A[恳u]擦);落g能->验A[墙u]林=p紫;re蜻tu厚rn街T皱RU姥E;}BO题OL尺D比el规et毙e(英Gr羡ap欣h授g,in蒜tu,in乒tv){in印tn=律g-队>V脖er惜ti若ce半s;En够od宝e*p竟,*盾q;if碰(u免>-迅1&愁&u钞<n快){p=牛g-慈>A贸[u赞];号q=西NU弊LL当;wh桃il雾e(葛p&疑&p能->Ad宵jV携ex!=绝v)纯{q=社p;篮p苏=p辅->Ne肌xt沾Ar剧c;}if摧(p风){if沸(q伞)驰q-雀>Ne份xt峡Ar返c=p诸->Ne趋xt行Ar辟c;el软se六g限->气A[伐u]蜡=p砍->Ne轮xt行Ar需c;fr抱ee恩(p万);筹r雅et积ur杀n筛TR缺UE言;}}co愁ut<<好“B骨ad柄I脖np摊ut蒜”;锦r裹et瞧ur甚n哈FA昨LS吹E;}操作歼函数例:图类圆型变湖量:AL宏gr腊ap联hG纸;顶点饥个数蛾:G.涨ve赢xn铁um图的类限型:G.栽ki寻nd=(D胞G,卧DN泻,A兰G,晕AN职)顶点i信息替:G.兔ve午rt扫ic煌es[i乒].旅da瞒da顶点i的第砍一个窝邻接符点:G.慢ve绒rt萄ic穗es[i悲].fi体rs结ta精rc->ad廊jv摄exG.雷ve震rt甲ic卖es[G.景ve流rt浆ic帽es[i览].fi献rs恼ta垒rc->ad蹈jv扑ex].毁da歌taG.银ve勺rt亭ic抹es[i霉].fi没rs秋ta锁rc->桌in街fo顶点i的第浙二个坊邻接欢点:G.这ve每rt峡ic绩es[i醋].fi李rs随ta晶rc->ne臭xt己ar桨c->ad叙jv诉ex图的遍历算法深度优先搜索DFS(Depth-Firstsearch)广度优先搜索BFS(Breadth-Firstsearch)图的遍历确定匙遍历饺起点为保逢证非旱连通颂图的聚每一偶顶点征都能末被访耻问到墙,应半轮换壤起点为避恒免顶谦点的闷重复盾访问形,做致访问丧标记遍历科图注欧意问旁题:深度链优先晨搜索DF侵S(膛De肾pt绵h-狂Fi丝式rs黄t胆s渡ea织rc雁h)首先穿访问宏起点险,然辞后依神次访溉问与戴该起臭点相描关联笋的每彩一个顶点纯,并它以该栋关联沈顶点怖为新扒的起臂点,现继续姐深度端优先劫遍历益。若图中块还有诞未被划访问哑的顶目点,裁则换涝一个充起点弊,继喉续深取度优组先遍历;屯直到响所有肠的顶荐点都菌被访文问。V1V2V3V4V5V6V7V8无向图G3V1V2V3V4V5V6V7V8有向图G4V1,V3,V6,V7,V2,V4,V8,V5V1,V2,V4,V8,V5,V3,V6,V723深度曲优先石遍历柳:Vo穷id光D勉FS员(G首ra兽ph粱g严,in码tv,辰B犹OO雅L绑*v理is没it河ed女){En饿od葵e*w鲁;vi需si模te烤d[坑v]惑=T庆RU摄E;pr窃in盒tf(“慰%d御”,掉v库);fo脊r陡(w士=g.躲A[v膨];乎w起;净w=畜w-原>Ne狂xt掩Ar愤c)if铸(v米is欲it谁ed印[w咬->Ad幻玉jV远ex])壁D佣FS户(g阳,令w-购>Ad味jV寸ex,戚vi笼si性te洗d)廊;}Vo贸idTr态av绣er唇sa枯l_枕DF碗S(G夕ra吗ph棚g效){BO妄OL祸v悉is扑it恐ed毙[Ma溪xS化iz膛e];in投ti,产n听=g.亩Ve俗rt段ic隆es;fo网r(廉i=邻0;轰i<n;巨i++惜)能vi安si拒te著d[茫i]撑=F篇AL崖SE箭;fo移r(手i=趴0;悬i<n;阴i++骆)if恩(!绞vi殊si充te纸d[哀i]牵)转DF挑S(g,饮i,帖vi矛si涂te翼d);}v13v2v3v4v54422123010101234^^无向图G2邻接表V3V1V4V5V2G2图G2的深丝式度优术先遍批历结碎果:V1,V4,V3,V5,V224广度香优先何搜索BF凑S寇(B围re葬ad淘th甜-F疼ir租st竖se劝ar铅ch俩)V1V2V3V4V5V6V7V8无向图G3V1V2V3V4V5V6V7V8有向图G4V1,V2,V3,V4,V5,V6,V7,V8V1,V2,V3,V4,V5,V6,V7,V8首先均访问卧起点闲,依角次访线问与松该起糟点相详关联拍的每学一个邻接央点,然稍后分包别从唉这些打邻接抹点出童发访动问它沿们的买邻接愿点,肆并使“先被访问失的顶膛点的么邻接螺点”先于“后被炉访问董的顶李点的晶邻接部点”被访问,若赤图中猫还有查未被碧访问饼的顶私点,教则换宿一个愚起点丙,继饼续广度脉优先遍历沈;直获到所惕有的握顶点已都被秘访问粒。25#i脑nc毕lu满de沈“qu之eu螺e.被h”Vo班id沉B筋FS川(G租ra姿ph毕g及,晶T确v,五B盲OO稿L竞*v要is沙it看ed凳){En肚od摘e*w头;炕T麻u;孕Q羡ue惧ue阵q推;Cr治ea械te谎Qu淋eu议e(&见q,Ma李xN崖um单Ve竭rt欢ic白es);vi毒si创te楼d[请v]厘=T父RU矿E;pr鉴in陕tf(“贺%d拌”,智v向);Ap画pe佩nd草(&槐q,骨v展);wh写il脱e(占!Is咏Em局pt裹y(q号))却{Qu刻eu勿eF况ro衡nt(q兼,缘瑞&u颂);贝S剂er婆ve巴(&驰q)贱;fo世r(忘w=g.编A[u遭];世w苦;抖w=遍w-踩>Ne奋xt裹Ar慰c)if令(!苗vi济si岁te曲d[服w-勿>Ad雨jV或ex])棋{pr胖in陷tf(“匠%d违”,弟w-窑>Ad贪jV昌ex);vi罪si杠te沙d[贫w-友>Ad帅jV慌ex]=阔TR晨UE队;Ap速pe弦nd桐(&扁q,傍w茧->Ad叼jV墨ex);}}}Vo纳idTr丘av芒er卸sa怎l_磨BF零S(G截ra轮phg){BO事OL撤v朽is烂it换ed陪[Ma星xS逝
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省彭州市彭州中学2025届高考英语全真模拟密押卷含解析
- 上海市2025届高三适应性调研考试数学试题含解析
- 2024年幼儿园综治工作计划(2篇)
- 福建省厦门松柏中学2025届高考临考冲刺数学试卷含解析
- 2025届上海市八校联考高考冲刺押题(最后一卷)英语试卷含解析
- 2025届河南省驻马店市名校高三最后一卷语文试卷含解析
- 安徽省亳州市涡阳第四中学2025届高三下学期一模考试英语试题含解析
- 安徽省皖南地区2025届高考压轴卷英语试卷含解析
- 山东省聊城市某重点高中2025届高三第一次模拟考试英语试卷含解析
- 2025届四川省内江市球溪中学高考仿真卷英语试卷含解析
- 电影叙事与美学智慧树知到期末考试答案章节答案2024年南开大学
- 2024年成都益民投资集团有限公司招聘笔试冲刺题(带答案解析)
- 改进维持性血液透析患者贫血状况PDCA
- 小水滴的诉说说课稿
- 六年级下册科学素材 实验报告单 教科版
- (完整版)气盾坝工程施工方案
- 国家开放大学《公司财务》形考任务1-5参考答案
- 48米下承式简支栓焊钢桁梁桥课程设计(共25页)
- that-girl中英文歌词分享
- (完整版)印章交接单模板
- GPS静态测量手簿记录
评论
0/150
提交评论