基于改进的Kruskal算法求解最短路程问题.doc

上传人:教**** 文档编号:86247187 上传时间:2023-04-14 格式:DOC 页数:21 大小:479KB
返回 下载 相关 举报
基于改进的Kruskal算法求解最短路程问题.doc_第1页
第1页 / 共21页
基于改进的Kruskal算法求解最短路程问题.doc_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《基于改进的Kruskal算法求解最短路程问题.doc》由会员分享,可在线阅读,更多相关《基于改进的Kruskal算法求解最短路程问题.doc(21页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、提供完整版的毕业设计研究生综合应用报告课程名称 高级计算机网络 学 院 计算机学院 年 级 一 专业班 学 生 姓 名 张仲勋 学 号 20141402024 开 课 时 间 2014 至 2015 学年 第 一 学期基于流媒体的高清视频传输摘要本文使用适当改进的Kruskal算法,解决为使总路程最短如何选择出行路线的问题。把要到访的地点作为顶点,所有顶点两两之间的连线和距离(起点和终点无连线)分别作为边以及边的权值,构造加权无向图。问题即转化为寻求从起点出发,遍历中间各点,最后到达终点的最短路径。该路径是无向图的生成树,但不一定是最小生成树。路径的起点和终点已经固定,他们的度数必须为1,而中

2、间各顶点的度数必须为2,原因在问题分析里面进行说明。通过对Kruskal算法适当改进可以得到该路径。关键词:最短路径 生成树 Kruskal算法一、 问题分析对于该类问题,要先得到任意两个地点之间的距离,因为不能直接从起点到达终点,所以不需要知道起点和终点的直接距离,也即在其加权图上这两点之间没有边。可以通过百度地图1等工具获取两个地点的距离。由于路径的起点和终点固定,起点只能“出去”,终点只能“进来”,当求其最短路径时,这两个点的度数要为1。对于起点和终点之外的其他顶点,其度数只能为2,原因如下:对于任意三个顶点(起点和终点除外)A、B、C,假如A的度数为3(大于3时只考虑和A相临的其中两点

3、),如图1所示。图1:一点的度数大于2设A先到B点,要经过C点的话必须回到A,再到C,其路程必然比从B直接到C远。这种情形也包含某个点的度数为1的情况,所以除起点和终点外其他顶点的必为2。综上所述,在改进Kruskal算法时,只需加上两个限制条件即可,即起点的度数为1,其余顶点度数为2。二、 模型建立把每个地点作为顶点,每两个顶点相连作为边,两个顶点之间的距离作为边的权值,构造加权无向图,如图2所示(单位:千米)。其中a代表重庆,b代表五台山,c代表黄鹤楼,d代表泰山,e代表北京,。由于不能从出发点直接到达终点,所以a到e没有连线。图2:路线模型图三、 符号说明:存放生成树的边的集合,初态为空

4、集;:生成树的权值,初值为零;VS:部分树的顶点集的集合,初值为:a,b,c,d,e;:顶点的度数。四、 Kruskal算法改进Kruskal算法步骤2:,0,VSa,b,c,d,e,将边按权值小到大排成队列Q;若= 1,输出,停止。否则转入下一步;从Q中取出边,并从Q中删除;如果u,v在VS的同一个元素中,则转,否则分属两个集合,进入下一步;,VSVS + ,+,转入。由问题分析可知,在对Kruskal算法进行改进时,只需添加两个限制条件,起点和终点的度数为1,其余各点度数为2。引入来表示顶点的度数,初值为0,把Kruskal算法的第步改为如下形式:如果u,v在VS的同一个元素中,或者 (,

5、u,v不是起点或终点),或者 (,u,v是起点或终点),则转,否则u,v分属两个集合,+ 1,+ 1,进入下一步。五、问题求解使用改进的Kruskal算法求图2的最小生成树,按边的权值从小到大排列为:,步骤如下:(1) 选出边,得到= ,= 359,VS = ,;+ 1 = 1;+ 1 = 1;(2) 选出边,由于的度只能为1,重新选边;(3) 选出边,由于b,d分属VS的两个不同的集合,= 1,= 0,故得到=,VS =,a,c, = 359 + 576=935,+ 1 = 2,+ 1 = 1;(4) 选出边,由于c,d分属VS的两个不同的集合,= 0,= 1,故得到=,VS = ,a ,=

6、 935+863 = 1798,+ 1 = 1,+ 1 = 2;(5) 选出边,由于a,c分属VS的两个不同的集合,= 0,= 1故得到=,VS = ,= 1798+896 = 2694,+ 1 = 1,+ 1 = 2;(6) 因=1,输出=,= 2694,计算停止。的图形如图2所示,即是通过改进的Kruskal算法求得的最小生成树。图2:最短路线图由图2可知,当如下安排行程:重庆到黄鹤楼,黄鹤楼到泰山,泰山到五台山,五台山到北京,此时总的路程最短,为2694公里。参考文献1百度地图:2龚劬,图论与网络最优化算法,重庆:重庆大学出版社,2009年10月第一版046426078506542810

7、760218101160559573072560317707408008019536946189921707353078365452352872530650940691231837832313368917049257906897449349420011885991474546106116976315289707406817372941197530100954592778799653731040980639820524187643183366700928097699428357002844341580711814425082937695475983921563875800409380036058

8、224276694054469368890493704428564453146394979507759279218928900852297431879455053230468110559110601917183092637353807133347626280579277294671241579680912798071324642720698890701557639287281920289618406839388882575866909507703411794075406122608018504580803642274368588896233810290963614714632085025064

9、783015950406563739428436924269103045573285677268028808386867875897533474258155211997320754974586681621443846035489234087165812420382970983063317594707705001406022353399522998927987142544588086093044054746433836406450369536739581780665381302807454927893495395007472747322377657376227613208149788118930

10、945214291884284917415564488165068076923566726082126247682511149550660110502800320165235103616052011956999669569629518746044856792386941737483123571950845492910107225060053646589013180555588428778460604927858436909031096299009391563137232827449201962111293673967386220269240871499387848431448043246674

11、387337442519287194318171279688498285720317845976864702281927030638319454075374434702005010887905460676964631827324034438323082827259254377225410777326524750711087881413346259044609869132210494188968800425241608428563313057740882400536256621503777191102975621844153137921296336969908664555457816211577

12、246199335525878140410527141467252418073944250011463487229218173041421993051432849111250854607399590493248666379395315127328270553288147421957025595920886165248503733537739112114386225298926360973854931924003389364399605647885449865022983054705634070433189494184704604556601655457830271764321262009770

13、012655104527059521890329557832418004973575675364844969122475122137475113690707709135836110675443912153001099299463779955650788855413668168813008585329570702007139656727258762371592589251538713594531665793762169185818646852944387097850230552555884310376005016320802764472084926618999690793928704236639

14、960237307292880396835453727724363101897702388295363684830284412094033638985720281202949605174429912759810788854360325325285060629760853333661272043263300142094776302176866665764190025955215857874355684068088197515959672969307593557063650571172377704335571107024400205458369225451414785710741965543293

15、899357933466192877434683278735832630065629924954303709376187455019584950322049257194281848587697965151493480619379061564439736061814390209733978499113140209995810696742286545724805186793236603341008900974409899616046804543971345104100180443194946442807140243953471378255376577557949169997884532521764

16、362851191349237880730430706996666589320630419638755032402540030611965157391746606329749408624591384016210398584668112132342479142428893634781836713215090183315714328302625322512885002191519548117167960196861875189525544574861214785909842819092225426295172870231314218251452761706748619572559497798597

17、229675864042374517140900331257203120851910118124171938769191192130953609060634338902086187234420079334459433994255796315894221689812173699638700497323999679942228518789016207498041572201306297993798319041174110826159007094143965432471438818417389379252382153598799655539398824916661516705674714968969

18、430039863058963471895642236123001574798811759320785291272035532609037562787109931465718408413114258334779368672403064300753602121078961463725381239850703946420415766253939470308122715652599035700974095524675703796109105510189231417275054259248170794479681530872060295132900214414012563658319715243533

19、122088167858599331378458193340071624918320309510340395330124294350471572774071154700228569247146020231056855496273972178302740109873234811690720271421090802914795531781149170988392816181571478167904742967632775587460438124080484416497306326390289387605199744274340378882867672494730550034063901327850

20、705305443729532167645256535203154938813317611258155934819167936106607212191363952395596959104782807224629458418493379795934878995772590687647294777574748830277071021052877555703263424166751689722281487960275572160522256066039463852896572776951339388278516515503455555305693705533328259321262280107545

21、728884728376246770368651650979672379245314922639629901114973534307753017369047374817961225953199925489782983169373817916995212263216474364828344977090682607686648111017995129847749879011970779710822445493416997148374849950880280922698367423912768733527655842201207902930919644309662443453857076418083

22、066432539923596530030171517955789557487266733530370484835226633569894615766996801230421694145837481997199617089701197056043221810099964823053452307512046018927286780261404128603676581000672933244338976170504395731896585024627622149444506055659058458702574843498778520585862319758545249191196172365611

23、303851484616307058910949918901940508490324651878696164377065611917350395448384253876155681623820547393312534171383453805413748155926573208943429093347869924466815001790158813711957605075973347370448455517568067189728678942626304171765450347512215717571492155119516753372362799357228114687341985653041

24、023464107585116243255558212629376847536073866468644000952197155086887626661476083516286347438573242824732219571677470014512470738695178993312884462676706703961109196608472423628038534173954194687425040059743361579015548468134579805172187455727361145626249816076163789419179960796015440704908662502366

25、248906682834226600629258748884669338474972456816452770583317482349048687927628480488969137197014513724068857539846239054213424667679532678135213707121137155454442873730073144824674256289727433365272796961943394491498766331852864309302652342230669609482095228126249523623795148854503237501289986787648

26、006756658879888211473995500146833092309476605677442181166990768036991186963047431046771078015194475800880912485956706096280327234960241556380840693831592100417609515711233205127017157261997117847498062559368840283400827497718118775936074107830087066666366766364653407136081761616846695595843772610471

27、769832688254491950253722138375924702145194401061451623455103995287428630176456839895743922475731510815011433813347356713340277363248934223133311910940880584207060152350696202022758085886550497312783585842578548726691704750206670800842403695459648957445819523813851661762018581104587684075175110308226

28、457734747907236755462158833363206661555418642649938920339973174641754169277284986007059846481389157005757027120461921074670923131052716834090840078182463322981097675265611642165114475635823944280455160356777583947838257004209174042986750543141361760438177604583592515717204811271453281666103457572335

29、452725267197465176540794122439617582221062395290335699423535660761212729737799865647657371161186077771406487773962160666172076307924435291961296239699619310069030908458272092916948310549079378788595049190061682875751040022827980502490827767813195016756381763341616066164513162852587770713840915138495

30、964954442727789898523669659862153734479422150993767065359713440229898244000215736898636353614469419184007019609546194122009395871927184761620945834077960924065420547204467717245640497420804449924111868794008168872297679562319325515383651464730723602255746218688838632632377906142459150522922258049371

31、017543362114760287760246326496903895107487132013338848765818244547913123039235918402313586797578713227216535885890122125853971173195398457574007139407503808780192293706765220551626357780551671640834559120258349825784718172132621022180282721991695470806661314405847238084577007882840746604169192329115

32、801727041376192575933884507658487579172417064758679150587991250807593363757351598242663861476571713382124288864689589128933410941159020250235702267630078252150115457085700753851419198408140598775646219344441841073130188690453648561695726519744067165714228650853076479359894962925814539834879267426457

33、978609090295992493646679867677076824783519408525977355825986494625816360414895680094196476154108998804459564460063513570568111091160274510865022676454458379327372750096786438960669157610508514495603642202635414628496511552537104059673775469905799271702335726915765668096997758734512709927177151330453

34、185017190643671413704814252011533682767602400349518164019042272965027474620961473844866789022290472755829837438123090940354254765424046786223260436989947256789062403073998770185022781910440150876675789915179683321161324193956660789534192957054428065274979545631494743041616196050195575533916009644200

35、113636420952198534453539731716125998168585534350217694298167383433793850319918424204910341033882318785384776479836998449962967641306616833867255738140010946824624186002283137778724500272053386282857200638377387539474048611398305213255308689367577148171139992142378242136947002745727158947381175976586

36、108203998150950589103486490754046303819387255809768155366515023556233124150955028535672773743382260655832732613405675368014030502734990508247155452836073076204033278597683590765567813906574942534019954609126986095330884358643509929065284646150679817387790500846553476918057723196423102281178044780422

37、428996158452489468481279389116352442689219537806117544993932070027702785846585813040550493417597140486612708641654863611816051661655633460559591232316461824777286602011011419417820407219534662242681049866525636190002615994651531355057339347948092552576437365473838618197550895831296194371938967340569

38、696074072343204186198554575873513269720144942075117009962118723590855836591421405470674244576726397272258881765964336186771704976478857626001078685204752115420446735136754167568960473807354777203973740563431573753811589744796734054791281585075663857323753229551450423361759706185508268302181984907773

39、023389443793457664670947957925119410075551455032848677126389715070137162087632331916293666631144255655791701478442799118911243656606293115690725833931126351973652016950260772897340866196774226047398757871509973127508239241576498073417786500565457024873440842016103421290981497583492689153940973132336

40、164342713759236102781982086969890001094159115422725228480544112049725847083040493900883721007465238729940265528452609131390000594575099467924469667599024039733585901585544001082289940253062398605774294957635332941016305708717285789956840896390311268970533356167463934568162881471517422916902463652274

41、434757724267644934123234466146716788300625643540296487187715372486607515268331840620344080272513356949805038415048879273283805314631205374328776323797580465338592917016547103917450003065063429370894769292287063570589607627665770048940912513643834710781661268524494060359635177756637078227463054916809

42、587294513961961900342319761236088503758535863999271369166517201565689543069548483517811334083784127599567402180001879399644710610816058627395244077369790830825184828440556483879980372592884767708880450683654138326762380645328321365086310727010945075582968607741880545363189095491468842746538262009189

43、491970455444790754728272933380475297232560581239458689790634571424351322213496626135773429409386135047356182106923239837539457723393854360668570475660302122041570140607506339247212144068126570809755982554134315761178762317983630627066420327306259332112991191289856761276018734843022316568614606844139

44、382567318071366782014570592846810646565867001830124571394089868812834937080856275253945021363951260966397053169791713125539080852627636826570350637071246848688561298853134802330990500288026444110120996683885856183726785466005997608573501126353990211576063404611506807530521356624993344721901263764366

45、763053026742713449270480025460684070610717692067073012928791777023537255707965042089158398679558882283422568727543060118724167613210403302238384746376163250096372737453376035754088057634281773015926286110134555736143065789314381684193707658187663747219755629486930001611397380331257934203292443540962

46、801881809058267912210949879487945893389962367103869990349259195852778788460462435829878966246896490142737517166402349948470074681267861946222918009481752003328946128780687753426222330462306310508892841140034238865762011373222628834147664655049348313975408883619609561167529033784424183034640951448369

47、453764758259130247268707959320044920148461610416019286821028795852903173351369088029400064887940753950968896051890092507008948244638305271545201766484690979564231820241144026537555600752994860762303524048958009231495519331731822238824242843916222063091080754143690993342114649728263489744068971157810

48、94652844052632300199996220282528702216582689856314990975507502957729349005501034712881004213094793301849700130059236840962878973178335979085438083972644312493304828997876160326605345629774360626062893698451117177660059251508500168953136914713864095949766518543257017426235316707443622996034140204651081428855905399958519270

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com