v型车标是什么车图解事“V”型连图?

【图文】图的基本概念 无向图及有向图_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
图的基本概念 无向图及有向图
上传于||暂无简介
大小:1.40MB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢百度百科_百度百科
百度百科是百度公司推出的一部内容开放、自由的网络百科全书平台。其测试版于日上线,正式版在日发布,截至2016年4月,百度百科已经收录了超过1300多万的词条,参与词条编辑的网友超过580万人,几乎涵盖了所有已知的知识领域。百度百科旨在创造一个涵盖各领域知识的中文信息收集平台。百度百科强调用户的参与和奉献精神,充分调动互联网用户的力量,汇聚上亿用户的头脑智慧,积极进行交流和分享。同时,百度百科实现与、的结合,从不同的层次上满足用户对信息的需求。[1]
日至30日,第十一届中国北京国际文化创意产业博览会在京举办。推介会上,百度百科、北京东方雍和国际版权交易中心、北京版宝科技有限责任公司三方围绕中国文博资源联合开发运营合作项目签署战略合作协议。
百度百科十周年
十年前的自己坐在身边
你想对他说些什么?
580万编辑者
编写1300万词条
每天被近亿人浏览
十年中,坚持,也放弃过
他们始终坚信
总有更好的未来
百度百科发展简史
百度百科UGC时期
百度百科是百度在日推出第三个基于搜索平台建立的社区类产品,这是继、之后,百度再度深化其知识搜索体系[2]
日,百科首页第一次改版。新增百科任务、、上周贡献榜等栏目。
日,正式成立,4月10日,百科蝌蚪团第一批成员出现,4月26日蝌蚪团首页上线。[3]
日,词条页面改版,改良词条页面的行高和行宽,在词条页面的底部增加了汉英词典解释,改进历史版本页面;5月百科编辑词条积分调整;6月开放分类检索升级,历史版本增加翻页功能,标准出台;9月高级编辑器上线,百科任务改版。11月百科推出相关词条,可以在百度知道里搜索到百科词条。(百度百科历史首页图片相册图片来源:[4]
日百度百科的第100万个词条诞生。
日,百度百科正式版上线,首页增加榜,栏目[4]
;8月28日,百科帮助页更新,增加词条编辑原则;9月18日,词条浏览页升级[5]
日,百度百科积分系统正式从百度知道中分离,拥有单独的一套积分体系。日,主页上线。
日 百度百科登上百度首页,[6]
此次调整也意味着百科业务在百度版图中的地方上升。
日至11日 百度百科首次邀请33位用户齐聚北京共庆百度百科四周年。[7]
(百度百科周年庆活动图片图册图片来源:[7-9]
2011年1月,“”百度百科校园计划上线,这一计划是百度百科与全国重点高校合作开展的社会实践互动项目。(百度百科相关主题活动图片图册图片来源:[10-11]
百度百科平台化
日正式上线,此举打破了以往网络上单纯以图片、文字为主的博物馆展品呈现模式,通过音频讲解、实境模拟、立体展现等多种形式,让用户通过互联网即可身临其境般地观赏展品,更平等便捷地了解历史文化。[12-13]
2012年9月权威上线,推动百度百科“专业精英+热情网民”模式为广大用户提供更为全面、系统、专业、权威的知识分享服务。[14]
2012年11月首个成都站上线[15]
;城市百科为城市打造独特的城市网络名片,通过线上线下相结合的推广手段,有效的带动城市相关内容的建设,让更多的人了解这座城市。
日新版词条页上线,这是自2008年以来词条页进行的第3次改版,也是词条浏览页变化最大的一次。11月4日全新升级,各团队专区全部合并,且统一使用财富值兑换礼品。11月18日系统上线,在该任务平台,活动的发起、参与编辑、词条评审等全由科友负责,任务自主性更高, 这是百科用户团队及词条编辑评审的一次重大改革和进步。
日新版明星百科词条页升级上线,打破了以往枯燥的百科阅读方式,打造出一站式的明星信息聚合平台。[16]
日,“词媒体”平台的百度百科全新改版上线,通过引入包括博物馆、书法家协会、卫计委等大量资源,城市百科、明星百科等特型内容聚合页,百度百科突破了传统百科全书的模式局限,借助权威合作、词条质量优化、视觉升级、强化社会化协作等措施。[17]
日,最高人民法院与百度联手,将全国各法院的详细准确信息发布在百度百科上,并以“中国法院地图”的形式集合呈现。承接最高人民法院在信息化上的新举措,作为全球最大的中文百科全书的百度百科,将成为全国法院大全的权威平台。[18]
2014年12月底,推出百科年度总结篇《》,以总榜单和分类特色榜单的形式盘点2014年的年度热词。[19]
日,百度百科全球最大的海洋馆网上直播上线。[20]
4月1日,正式对外发布百度百科“行业名人词条”。“行业名人词条的建立,将为各行业名人与普通民众之间搭起桥梁,在互联网上去伪存真,建立最权威、真实、全方位展现当代行业名人风貌的信息库,成为个人品牌打造的新始发站。4月7日,百度百科陕西数字方志馆上线。[21-22]
2015年5月,百科个人中心改版,透过百度百科的“数字窗口”,让人们能够更便捷地认知世界。[23]
日,百度百科“”正式上线,将艺术家、艺术作品、高品质的艺术展览等权威信息集合呈现到每个网民的面前,依托百度搜索强大的资源和百科大量的艺术家词条信息,简洁、快速、精准得到感兴趣的艺术类信息。7月21日,百度百科“科普中国?”专题上线,结合百度百科强大的平台影响力以及中国科协14个学会及国内顶尖专家资源,在互联网上开辟出了一块丰富权威的科普阵地。[24]
9月,百度百科上线“二战百科”专题,为中国人民抗日战争及世界反法西斯战争胜利70周年纪念日,推出再现历史的专题报道。
日,百度百科与房教中国在“第二届房教中国地产人年会暨第八届中国房地产策划师年会”上宣布正式合作,双方签署《关于地产百科战略合作协议》,携手打造打造专门针对地产垂直领域的“地产百科”。[25]
日,百科推出《》,在“史记2015”中,百度百科勇敢打破旧有模式,以三大主题:“殇.生之逝”、“耀.国之盛”、“鸣.民之声”,深度展现2015大事件。[26]
日,百度百科上线10周年发布会在京举行。会上百度百科全面展示了互联网知识平台的十年成就:累计创建词条1300多万,参与词条编辑的网友超过580万,每32秒诞生一个新词条。同时,百度百科正式发布了全新的产品“”。[27]
日下午,百度百科推出公益项目“萤火虫计划”,主要利用百度百科的内容结合VR、AR等技术,消除地理地域带来的限制,为贫困地区的学生提供知识获取途径,由王珞丹出任公益大使。[28]
百度百科产品功能
百度百科基础功能
页主要由百科名片和正文内容和一些辅助的信息组成;百科名片包括概述和基本信息栏,其中概述为整个词条的简介,对全文进行概括性的介绍,基本信息栏主要是以表单的形式列出关键的信息点;
词条正文内容按照一定的结构对词条展开介绍,其中词条可以设置一级目录和二级目录,用来对词条划分结构使用;在正文中,除了文字以外,还可以添加图片、视频、地图等富媒体内容,同时为了保证内容的准确性,理想状态是要求每段内容都有以辅证;
在词条正文底部,为参考资料以及开放分类信息,正文右侧的辅助信息包括词条统计、词条贡献榜、百科消息等,词条统计包含页面浏览和编辑次数、最近更新时间和创建者等信息;词条贡献榜突出显示对词条申请为或的用户,并用勋章图标标记。
在词条页词条名右侧有一个编辑按钮,其中对词条划分了三类:锁定(一般为争议或医疗类词条,禁止编辑)、485保护(词条内容较为丰富,仅等级不低于4级且通过率不低于85%的账号可编辑)、普通类(任何百度账号都可编辑);点击编辑之后,会进入编辑器页面。
在编辑页面,可以对内容进行增删改等操作,其中编辑页顶部有各类功能,如字体、标题设置,添加参考资料、图片、表格、地图等操作,可以添加一些模块,如代码模块、公式模块、参演电视剧等特殊模块,也可以对一些内容添加,以链接到该添加内链所指向的词条上进行展开阅读。
在对内容修改完毕之后,可以在编辑也右上角点击提交或者预览;点击预览,会显示词条如果通过之后的内容页;点击提交后需要写修改原因,之后需再次点击提交,最后进入系统审核阶段,并自动关闭了编辑页面。
百度百科特色功能
是百度百科与全国的知名博物馆合作,共同开发的互联网平台。通过音频讲解、实境模拟、立体展现等多种形式,让用户通过互联网即可身临其境地观赏珍贵展品,更便捷地获取信息、了解知识。实现了电脑端和手机端的同步展现,让用户随时随地都能感受到历史文化的沉淀。[29]
是百度百科与地方政府
企业百科词条页
共建“城市百科”中的一个落地项目,每个城市根据自身情况,在各自的城市百科中涵盖包括历史、文化、旅游、人物、美食、建设等多方面内容,政府还可通过百度城市百科发布城市热点新闻和资讯信息。一方面,网友足不出户即可了解到最全面最及时的城市信息;另一方面,由于所有的内容均经由政府认证,保证了城市百科内容的权威性和准确度,用户只需在百度搜索查询具体的城市百科名称,就能看到该城市的网络名片页面。[30]
由百度百科向企业提供的基于企业类词条的品牌管理方案。企业百科是在企业词条基础上提供的一项增值服务。
秒懂百科以一分钟解读百科知识为切入点,用视频的方式解读知识、传播热点,打造百科内容生产生态,形成全新的知识传播形式,满足当下互联网用户对知识展现形式的需求。[31]
彩虹计划词条页
通过百科与经纪公司的合作,或百科明星团与粉丝合作,提升明星词条质量并对页面进行升级,打造一站式明星聚合页,包括明星大图、百科专属VCR、明星动态、鲜花榜以及其他特型等。
艺术百科为百度百科与艺术类权威协会机构、艺术院校、学术期刊等展开合作,将艺术家、艺术作品、高品质的艺术展览等权威信息集合呈现到每个网民的面前,依托百度搜索强大的资源和百科大量的艺术家词条信息,简洁、快速、精准得到感兴趣的艺术类信息的一个平台。[32]
为贯彻落实《全民科学素质行动计划纲要实施方案()》,中国科协与百度共同进行科普中国百科科学词条编写,向公众提供科学准确的百科词条。[33]
日是中国人民抗日战争及世界反法西斯战争胜利70周年纪念日,各大网站都在推出再现历史的专题报道。百度百科上线的“二战百科”专题,以全景式的内容组织、全方位的宏大叙事、全屏幕的动态视觉效果,对二战历史完整串联,再现了那段历史的烽火硝烟。
百度百科非遗专题集合页包含了咏春拳以及其他非遗项目共1377个,首屏采用“卷轴”的叙事方式,浓浓的中国风扑面而来。非遗专题,百度百科第一次使用中英双语版页面,为中国非物质文化遗产搭建了一个国际化的舞台。[34]
高校百科推出全国高校集合页,
收录了全国所有本科和专科院校,并支持按地区、办学性质、学校分类等查找。对本科专科高校词条内容进行全面更新梳理,利用tab分类展示,内容更丰富,条理更清晰。对招生计划、历年分数线等,一改传统一张长表格展示的形式,在表格中加入交互,可以按生源地、文理科、年份快速查找所需信息,用户体验得到了很大的提升。在校园展示上,除了传统的图文介绍,更是采用了全景技术这一富媒体形式。[35]
法院百科的项目由最高人民法院发起,由全国各级法院提供内容,在权威性上能够得到最充分的保障。法院百科上线之后,只要在百度上搜索法院名称,就可以进入对应的百科词条,找到中国境内3496家法院的最权威、详细、全面的信息。包括具体地址、联系***、官方网站、机构设置等,联合发布的平台架起沟通的桥梁,开辟了法院在信息化和透明化的新篇章。[18]
地产百科是由百度百科与房教中国在“第二届房教中国地产人年会暨第八届中国房地产策划师年会”上宣布正式
合作,双方签署《关于地产百科战略合作协议》,携手打造打造专门针对地产垂直领域的“地产百科”。[25]
百度百科“地产百科”将聘请地产行业专家、学者、地产领域研究者、资深媒体人等共同成立地产百科编委会,对地产专业知识进行权威性注解。并重新设计打造个人词条与企业词条,全面优化提升集聚品牌DNA的详情页面,扩大品牌的影响力与公信力。同时,根据用户需要,专业设计项目词条,推出项目多元化、多维度、多角度的全方位展示端口,助力地产项目获得更多流量关注。
地产百科通过深度挖掘地产相关词条潜力、抓住全民地产知识普及契机,为网民、地产企业提供一站式的个性化服务,在房地产行业实现连接人与服务。[25]
史记百科以总榜单和
分类特色榜单的形式盘点年度热词,其中分类榜单包括娱乐榜、网络榜、社会榜、科技榜以及百科榜等榜单,榜单基于百科一年中积累的权威数据产生,结合线上公开投票和权威专家评审意见综合评定。已发布《》、《》、《》专题。[36]
医疗词条“”
通过对4万个医疗类常用百科词条进行锁定、邀请权威医学专家进行认证编辑的方式,为广大网友提供更为权威、专业的医疗卫生知识分享平台。锁定后的医疗类词条将不再接受普通网民的修改。[37]
公益平台----
百度百科推出的一个开放的公益平台,主要利用百度百科的内容结合VR、AR等技术,消除地理地域带来的限制,为贫困地区的学生提供知识获取途径。一端连接了需要帮助的广大贫困地区学生,另一端连接着那些期望用知识和技术参与公益活动的个人、企业或第三方机构,有志于帮助贫困地区孩子的人和企业都可以加入百度百科“萤火虫计划”。[28]
百度百科用户功能
百科任务首页
在该系统中,活动的发起、参与编辑、词条评审(成员负责)等全由科友负责,任务自主性更高,科友可组队完成,同时根据任务难易度不同,还可获得财富值奖励及实物奖励。
初级优质、特色词条申请,导师计划都在系统中开展。
是百科用户可以消费财富值,兑换编辑特权、精彩形象、精美实物礼品的系统。
百度百科用户体系
百度百科积分体系
百科积分体系--百科头衔
百度用户在百度百科上参与编辑即可获得奖励积分。积分分为和两部分。财富值可用于在商城兑换虚拟特权、徽章和实物礼品。经验值与等级头衔相关。[38]
经验值是用户在创建、修改、完善中获得的一种积分,影响用户在百科上的等级。用户的经验值增加到一定值时,可以晋级并获得更高的头衔,从而获得额外的编辑权限。[38]
财富值是根据用户在百科中的优质贡献来获得,财富值可以在百科商城专区兑换虚拟、实物礼品。[38]
每个用户都会有一套属于自己的积分、等级和头衔。可以通过创建词条等操作不断增加积分,同时等级和头衔也会随积分不断晋升。[38]
百度百科用户团队
百科蝌蚪团
由百度百科的热心科友所组成的团队,是一批有知识、有能力,以分享知识、协作编辑为共同信仰的科友,是百科科友团体的中坚力量。
蝌蚪团成员对于词条有较高程度的认知和了解,具有较强的词条编辑能力、评审及判断能力。成员可以通过蝌蚪团工作室,协助官方完成建设性工作,官方会重点听取他们关于百科发展的讨论与建议,同时,蝌蚪团成员也是普通科友与官方沟通的桥梁。(日~)[39-40]
知识先锋/校园大使
是参与燃梦计划(百度百科校园计划)的大学生,一般为高校百科俱乐部的成员,而校园大使为该校百科俱乐部的主席或负责人;他们可以通过完善、梳理词条,并将知识运用于实践,在校园组织俱乐部开展活动[41]
。(2010年12月~)
是一个专门针对在校大学生展开,是鼓励在校大学生贡献智慧,分享知识的大型公益活动,通过完善、梳理词条,让在校生将知识运用于实践,并在实践中不断思考、不断进步,并锻炼学生们的综合项目。
是百科任务系统词条评审的科友,主要由成员组成,其主要职责是评审任务系统的词条,同时发现并培养新科友。(日~)
是百度百科核心用户团队,主要负责热点词条挖掘、更新、完善及添加热点新闻模块等,分享每天最新热点知识。百科热词团队由热爱知识分享、编辑能力优秀的科友汇聚而成。团队成员用最快的速度将最新的热点编辑更新到词条,同时将高质量信息整理发布,满足大家阅读的需求。他们每天服务着数10万网友对知识的需求。
百科热词团队在百科官方的引导下快速成长,团队成员逐步增加,他们用自己的付出不断传递着热词团队快捷、准确、高质的理念。
导师团是指通过导师计划,负责培养新人,引导其编辑高质量百科词条并加入蝌蚪团的精英评审团成员。(日~)
根据百科用户的兴趣爱好,以及擅长的编辑类别进行组建的团队,如,地理小组,高校小组等;其核心成员主要为蝌蚪团成员,并带领其他小组成员编辑百科高质量词条。(2013年~)
已取消团队
百科核心用户形象
是从百科用户中选拔出来的优秀网友,主要在百科分类频道页进行编辑推荐工作。[43]
(日~~2013年)
是从百度百科用户中产生的优秀科友,只要百科等级达到四级,通过率达到85%,复杂编辑达到50个,就有资格申请加入百科核心用户体系,成为百科核心用户。[42]
(2010年10月~2014年[44]
(原名)由一批具有较强编辑能力和丰富编辑经验的核心用户组成的,编修的职责是编辑特色词条,优化词条展现,全面提升词条质量,做更好的知识。[45]
(日~2014年)[46]
是百度百科的日常质量维护团队,负责打击恶意和低质量词条贡献,评选与贡献高质量的词条内容,同时,也承担着新手用户的引导职责。(日~2014年)
百度百科外界评价
百度百科开启权威编辑项目,与各行业垂直领域权威机构合作,这一系列的举措进一步提高词条的专业质量,实现从(用户生产内容)到(专家生产内容)的转变。而且2014年以来,突破了传统的百科功能,百度百科不仅集聚了逻辑严谨、内容丰富的文字内容,对于图片的表现形式也颇为多样化。同时,百度百科还可作为多种网络平台的“中心点”,并有望串联起包括社交网站、视频网站、新闻资讯、相关产品等网络信息,实现信息最大价值化[47-48]
在互联网时代,百度百科可以满足大部分网民迅速获取知识的需求,而且向所有人开放了一个免费获取知识的途径,实现了互联网时代的“开启民智”。百度百科是一本网络百科全书,互联网百科类产品从技术角度并无门槛,而其强大的内容生产能力、可以为用户提供权威、可信的知识是百度百科的核心竞争力。(赛迪网)
百度百科利用“”方式呈现新闻,一个重点新闻事件出现之后,用户会淹没在各种新闻列表中,而百度百科尝试用“词媒体”的方式来整理清楚来龙去脉,这属于百度百科的一个创新,可以让更多的网民可以更快,更精准的获取信息知识。
百度百科已经在尝试探索品牌数字博物馆、城市百科等合作项目,通过各种技术手段,把各类机构的内容借助百科的平台传递给更多的用户,一方面可以对合作机构品牌影响力的提升,同时也给用户提供给更多有价值的信息。这类应用不仅可以用在展馆,还可以用在植物园、动物园等多种场景,这样的合作同样可以用在多种商业场景,新技术展示、新产品发布、新概念传播等,通过这些技术和创新技术,不仅仅让百度百科成为一本人人可以获得知识的中文百科全书,更重要的是它可以让更多的信息以更加生动的形式呈现在互联网网民的面前。
百科全书式
百科作为知识平台,节省了人们记忆大量内容的成本,可以做到随用随取且及时准确,不会给大脑造成负担,且不会受记忆偏差的影响。在人类从认知黑箱走向科学文明的过程中,掌握更多学科知识的人,点亮了这个世界;的存在,以互联网工具让每个人都成为有望推动文明进化节点到来的那个人。[49]
百度百科成功做到了传播广度与深度的结合,让“词媒体”与“权威知识平台”形成完美统一。
人人可编辑
百度百科,以人人可编辑的模式,将碎片化的知识重新组合起来,在不增加人脑负担的同时,建立起人们与各学科之间互通的触点,从而以更简单的方式创造跨界的可能性。
人人可编辑,意味着人人都在自己的知识,同时也意味着人人都能够轻松从中获取所需。在“百科全书式”人物基本已不可能再出现的情况下,百度百科人人可编辑带来了另一种推动文明发展的方式。[49]
.百度.[引用日期]
.太平洋电脑网[引用日期]
.百度[引用日期]
.太平洋电脑网[引用日期]
.天极网[引用日期]
.新浪科技[引用日期]
.百度[引用日期]
.百度[引用日期]
.百度[引用日期]
.新华网[引用日期]
.生活网[引用日期]
.ccidnet网[引用日期]
.腾讯网[引用日期]
.新华网[引用日期]
.新浪[引用日期]
.网易[引用日期]
.中国网[引用日期]
.21CN[引用日期]
.百科[引用日期]
.网易[引用日期]
.中新网[引用日期]
.中新网[引用日期]
.中新网[引用日期]
.中新网[引用日期]
.凤凰网[引用日期]
.百度[引用日期]
.凤凰网[引用日期]
.新浪[引用日期]
.msn网[引用日期]
.环球网[引用日期]
.凤凰文化频道[引用日期]
.新浪[引用日期]
.新浪[引用日期]
.中新网[引用日期]
.网易[引用日期]
.百度百科[引用日期]
.凤凰网[引用日期]
.百度百科.[引用日期]
.百度[引用日期]
.enet网[引用日期]
.百度网[引用日期]
.百度[引用日期]
.百度[引用日期]
.百度粉丝网[引用日期]
.百度百科[引用日期]
.百度百科吧.[引用日期]
.赛迪网[引用日期]
.TechWeb[引用日期]
.网易[引用日期]
企业信用信息图(图论术语)_百度百科
(图论术语)
在数学中,一个图(Graph)是表示物件与物件之间的关系的数学对象,是的基本研究对象。
主要有以下两种定义。
图二元组的定义
图G是一个有序二元组(V,E),其中V称为顶集(Vertices Set),E称为边集(Edges set),E与V不相交。它们亦可写成V(G)和E(G)。
E的元素都是二元组,用(x,y)表示,其中x,y∈V。[1]
图三元组的定义
图G是指一个(V,E,I),其中V称为顶集,E称为边集,E与V不相交;I称为,I将E中的每一个元素映射到
。如果e被映射到(u,v),那么称边e连接顶点u,v,而u,v则称作e的端点,u,v此时关于e相邻。同时,若两条边i,j有一个公共顶点u,则称i,j关于u相邻。
图有/无向图
如果给图的每条边规定一个方向,那么得到的图称为。在有向图中,与一个节点相关联的边有出边和入边之分。相反,边没有方向的图称为。
一个图如果任意两顶点之间只有一条边(在中为两顶点之间每个方向只有一条边);边集中不含环,则称为单图。
图基本术语
阶(Order):图G中顶集V的大小称作图G的阶。
子图(Sub-Graph):当图G'=(V',E')其中V‘包含于V,E’包含于E,则G'称作图G=(V,E)的子图。每个图都是本身的子图。
生成子图(Spanning Sub-Graph):指满足条件V(G') = V(G)的G的子图G。
导出子图(Induced Subgraph):以图G的顶点集V的V1为顶点集,以两端点均在V1中的全体边为边集的G的子图,称为V1导出的导出子图;以图G的边集E的非空子集E1为边集,以E1中边关联的顶点的全体为顶点集的G的子图,称为E1导出的导出子图。
度(Degree):一个顶点的度是指与该顶点相关联的边的条数,顶点v的度记作d(v)。
入度(In-degree)和(Out-degree):对于来说,一个顶点的度可细分为入度和出度。一个顶点的入度是指与其关联的各边之中,以其为终点的边数;出度则是相对的概念,指以该顶点为起点的边数。
自环(Loop):若一条边的两个顶点为同一顶点,则此边称作自环。
路径(Path):从u到v的一条路径是指一个序列v0,e1,v1,e2,v2,...ek,vk,其中ei的顶点为vi及vi - 1,k称作路径的长度。如果它的起止顶点相同,该路径是“闭”的,反之,则称为“开”的。一条路径称为一简单路径(simple path),如果路径中除起始与终止可以重合外,所有顶点两两不等。
行迹(Trace):如果路径P(u,v)中的边各不相同,则该路径称为u到v的一条行迹。
轨道(Track):如果路径P(u,v)中的顶点各不相同,则该路径称为u到v的一条轨道。
闭的行迹称作回路(Circuit),闭的轨称作圈(Cycle)。
(另一种定义是:walk对应上述的path,path对应上述的track。Trail对应。)
桥(Bridge):若去掉一条边,便会使得整个图不连通,该边称为。
图图的存储表示
数组()存储表示(有向或无向)
的存储表示
的邻接多重表存储表示
一个不带权图中若两点不相邻,邻接矩阵相应位置为0,对带权图(网),相应位置为∞。一个图的邻接矩阵表示是唯一的,但其邻接表表示不唯一。在邻接表中,对图中每个顶点建立一个(并按建立的次序编号),第i个单中的结点表示依附于顶点vi的边(对于有向图是以顶点vi为尾的弧)。每个结点由两个域组成:域(adjvex),用以指示与vi邻接的点在图中的位置,链域(nextarc)用以指向依附于顶点vi的下一条边所对应的结点。如果用存放网(带权图)的信息,则还需要在结点中增加一个存放的域(info)。每个顶点的单链表中结点的个数即为该顶点的出度(与该顶点连接的边的总数)。无论是存储图或网,都需要在每个单链表前设一表头结点,这些表头结点的第一个域data用于存放结点vi的编号i,第二个域firstarc用于指向中第一个结点。
在上面两个图结构中,一个是,即每条边都有方向,另一个是,即每条边都没有方向。
在有向图中,通常将边称作弧,含箭头的一端称为弧头,另一端称为弧尾,记作&vi,vj&,它表示从顶点vi到顶点vj有一条边。
若有向图中有n个顶点,则最多有n(n-1)条弧,我们又将具有n(n-1)条弧的有向图称作。以顶点v为弧尾的弧的数目称作顶点v的,以顶点v为弧头的弧的数目称作顶点v的入度。在无向图中,边记作(vi,vj),它蕴涵着存在& vi,vj&和&vj,vi&两条弧。若无向图中有n个顶点,则最多有n(n-1)/2条弧,我们又将具有n(n-1)/2条弧的称作。与顶点v相关的边的条数称作顶点v的度。
路径长度是指路径上边或弧的数目。
若第一个顶点和最后一个顶点相同,则这条路径是一条回路。
若路径中顶点没有重复出现,则称这条路径为简单路径。
在无向图中,如果从顶点vi到顶点vj有路径,则称vi和vj连通。如果图中任意两个顶点之间都连通,则称该图为,否则,将其中的极大连通子图称为。
在中,如果对于每一对顶点vi和vj,从vi到vj和从vj到vi都有路径,则称该图为;否则,将其中的极大连通子图称为。
图图的基本操作
(1)创建一个图结构 CreateGraph(G)
(2)检索给定顶点 LocateVex(G,elem)
(3)获取图中某个顶点 GetVex(G,v)
(4)为图中顶点赋值 PutVex(G,v,value)
(5)返回第一个 FirstAdjVex(G,v)
(6)返回下一个邻接点 NextAdjVex(G,v,w)
(7)插入一个顶点 InsertVex(G,v)
(8)删除一个顶点 DeleteVex(G,v)
(9)插入一条边 InsertEdge(G,v,w)
(10)删除一条边 DeleteEdge(G,v,w)
(11)遍历图 Traverse(G,v)
图图的生成树和森林
对于一个拥有n个顶点的无向,它的边数一定多于n-1条。若从中选择n-1条边,使得仍然连通,则由n个顶点及这 n-1条边(弧)组成的图被称为原无向图的生成树。显示了一个无向连通图的生成树,双线圈表示的顶点为生成树的。
图最小生成树
在一个图中,每条边或弧可以拥有一个与之相关的数值,我们将它称为权。这些权可以具有一定的含义,比如,表示一个顶点到达另一个顶点的距离、所花费的时间、线路的造价等等。这种带权的图通常被称作网。
图或网的生成树不是唯一的,从不同的顶点出发可以生成不同的生成树,但n个结点的生成树一定有n-1条边
下面我们计算一下上面两棵生成树的之和。第一棵生成树的权值总和是:16+11+5+6+18=56;第二棵生成树的权值是:16+19+33+18+6=92。通常我们将权值总和最小的生成树称为。
构造最小生成树的方法:最初生成树为空,即没有一个结点和一条边,首先选择一个顶点作为生成树的根,然后每次从不在生成树中的边中选择一条权值尽可能小的边,为了保证加入到生成树中的边不会造成回路,与该边邻接的两个顶点必须一个已经在生成树中,一个则不在生成树中,若网中有n个顶点(这里考虑的网是一个),则按这种条件选择n-1边就可以得到这个网的了。详细的过程可以描述为:设置2个集合,U集合中的元素是在生成树中的结点,V-U集合中的元素是不在生成树中的顶点。首先选择一个作为生成树根结点的顶点,并将它放入U集合,然后在那些一端顶点在U集合中,而另一端顶点在V-U集合中的边中找一条权最小的边,并把这条边和那个不在U集合中的顶点加入到生成树中,即输出这条边,然后将其顶点添加到U集合中,重复这个操作n-1次。
下面我们考虑一下如何实现这个操作过程的算法。
分析 :(1)它主要有两项操作:按条件选择一条边和将顶点加入到U集合中;(2)网中的每个顶点不是在U集合中,就是在V-U集合中。为了提高算法的时间、空间效率,我们将为这个一个辅助数组closedge,用来记录从集合U到集合V-U具有最小权值的边。对每个属于V-U集合的顶点,在辅助数组中存在一个相应的分量closedge[i-1],它包括两个域,一个域用来表示在该顶点与V-U集合中某些顶点构成的边中权最小的那条边的,若该顶点进入U集合,则值为0;另一个域表示这条最小权值的边对应的在V-U集合中的顶点下标。其类型定义如下所示:
#defineMAX_NUM10
}closedge[MAX_NUM];
整个算法的执行过程可以描述为:
{初始化closedge数组的内容;
选择某个顶点k作为生成树的
根结点,并将它加入到U集合中;
重复下列操作n-1次:
l选择一条满足条件的边;
l输出这条边的两个端点;
l修改V-U集合中的顶点信息,即与U集合中构成最小
权值的边。
假设该网以的形式给出,则完整的算法为:
voidMini_SpanTree(GraphG,intk,intn)
{//G是网的邻接矩阵,k是生成树根结点的序号,n是网的顶点数目
for(j=0;j&n;j++)
if(j!=k)closedge[j]={k,G[k][j]};
closedge[k].lowcost=0;
for(i=1;i&n;i++)
k=minmun(closedge);
printf(k,closedge[k].adjvex);
closedge[k].lowcost=0;//将顶点加入U集合中
for(j=0;j&n;j++)
if(closedge&&G[k][j]&closedge[j].lowcost)
closedge[j]={k,G[k][j]};
图存储结构
具有n个顶点的有向图可以用一个n′n的方形表示。假设该矩阵的名称为M,则当&vi,vj&是该有向图中的一条弧时,M[i,j]=1;否则M[i,j]=0。第i个顶点的为矩阵中第i行中"1"的个数;入度为第i列中"1"的个数,并且有向图弧的条数等于矩阵中"1"的个数。
的邻接矩阵
具有n个顶点的无向图也可以用一个n′n的方形矩阵表示。假设该矩阵的名称为M,则当(vi,vj)是该无向图中的一条边时,M[i,j]=M[j,i]=1;否则,M[i,j]=M[j,j]=0。第i个顶点的度为矩阵中第i 行中"1"的个数或第i列中"1"的个数。图中边的数目等于矩阵中"1"的个数的一半,这是因为每条边在矩阵中描述了两次。
在C 语言中,实现表示法的类型定义如下所示:
#defineMAX_VERTEX_NUM20
typedefstructgraph{
Elemtypeelem[MAX_VERTEX_NUM][MAX_VERTEX_NUM];
边结点的结构为:
adjvex是该边或弧依附的顶点在中的下标,next是指向下一条边或弧结点的
elem是顶点内容,firstedge是指向第一条边或弧结点的指针。
在C语言中,实现邻接表表示法的类型定义如下所示:
#defineMAX_VERTEX_NUM30//最大顶点个数
typestructEdgeLinklist{//边结点
structEdgeLinklist*
typedefstructVexLinklist{//顶点结点
EdgeLinklist*
}VexLinklist,AdjList[MAX_VERTEX_NUM];
创建和的算法实现:
(1) 创建有向图邻接表
voidCreate_adj(AdjListadj,intn){
for(i=0;i&n;i++){//初始化顶点数组
(&adj.elem);
adj.firstedge=NULL;
scanf(&i,&j);//输入弧
s=(EdgeLinklist*)malloc(sizeof(EdgeLinklist));//创建新的弧结点
s-&adgvex=j-1;
s-&next=adj[i-1].//将新的弧结点插入到相应的位置
adj[i-1].firstegde=s;
(&i,&j);//输入下一条弧
(2)创建的
voidCreate_adj(AdjListadj,intn){
for(i=0;i&n;i++){//初始化邻接表
scanf(&adj.elem);
adj.firstedge=NULL;
scanf(&i,&j);//输入边
s1=(EdgeLinklist*)malloc(sizeof(EdgeLinklist));
s1-&adgvex=j-1;
s2=(EdgeLinklist*)malloc(sizeof(EdgeLinklist));
s2-&adgvex=i-1;
s1-&next=adj[i-1].
adj[i-1].firstegde=s1;
s2-&next=adj[j-1].
adj[j-1].firstegde=s2;
图图的遍历
常见的方式有两种:和,这两种方式对和均适用。
图深度优先遍历
的思想类似于树的。其过程可以描述为:从图中某个顶点v出发,访问该顶点,然后依次从v的未被访问的出发继续深度优先遍历图中的其余顶点,直至图中所有与v有路径相通的顶点都被访问完为止。
深度优先遍历算法实现:
为了便于在算法中区分顶点是否已被访问过,需要创建一个visited[0..n-1](n是图中顶点的数目),用来设置访问标志,其初始值visited(0≤i≤n-1)为"0",表示中下标值为i的顶点没有被访问过,一旦该顶点被访问,将visited置成"1"。
int visited[0..n-1]={0,0,...0};
void DFS(AdjList adj,int v)
{//v是起始点的在邻接表中的值,其下标从0开始
visited[v]=1; visited(adj[v].elem);
for (w=adj[v].w;w=w-&next)
if (!visited[w-&adjvex]) DFS(adj,w-&adjvex);
对于,这个算法可以遍历到v顶点所在的中的所有顶点,而与v顶点不在一个连通分量中的所有顶点遍历不到;而对于可以遍历到起始顶点v能够到达的所有顶点。若希望遍历到图中的所有顶点,就需要在上述算法的基础上,增加对每个顶点访问状态的检测:
intvisited[0..n-1]={0,0,...0};
voidDFSTraverse(AdjListadj)
for(v=0;v&n;v++)if(!visited[v])DFS(adj,v);
图广度优先遍历
对图的方法描述为:从图中某个顶点v出发,在访问该顶点v之后,依次访问v的所有未被访问过的,然后再访问每个邻接点的邻接点,且访问顺序应保持先被访问的顶点其邻接点也优先被访问,直到图中的所有顶点都被访问为止。下面是对一个进行广度优先遍历的过程。
下面我们讨论一下实现广度优先遍历算法需要考虑的几个问题:
(1)在广度优先遍历中,要求先被访问的顶点其邻接点也被优先访问,因此,必须对每个顶点的访问顺序进行记录,以便后面按此顺序访问各顶点的邻接点。应利用一个队列结构记录顶点访问顺序,就可以利用队列结构的操作特点,将访问的每个顶点入队,然后,再依次出队,并访问它们的;
(2)在过程中同一样,为了避免重复访问某个顶点,也需要创建一个visited[0..n-1](n是图中顶点的数目),用来记录每个顶点是否已经被访问过。
int visited[0..n-1]={0,0,...0};
void BFS(AdjList adj,int v)
{//v是起始点在中的下标,邻接表中下标从0开始
InitQueue(Q); //Q是队列
visited[v]=1; visite(adj[v].elem); EnQueue(Q,v);
while (!QueueEmpty(Q)) {
DeQueue(Q,v);
for (w=adj[v].w;w=w-&next)
if (!visited[w-&adjvex]) {
visited[w-&adjvex]=1;
visite(adj[w-&adjvex].elem);
EnQueue(Q,w-&adjvex); }
图拓扑排序
是的一个重要操作。在给定的有向图G中,若顶点序列vi1,vi2,...,vin满足下列条件:若在有向图G中从顶点vi到顶点vj有一条路径,则在序列中顶点vi必在顶点vj之前,便称这个序列为一个序列。求一个有向图拓扑序列的过程称为拓扑排序。
举例:的学生应该学习的部分课程及其每门课程所需要的先修课程。
拓扑排序的方法:
(1)从图中选择一个入度为0的顶点且输出之;
(2)从图中删掉该顶点及其所有以该顶点为弧尾的弧;
反复执行这两个步骤,直到所有的顶点都被输出,输出的序列就是这个无环的序列。细心的读者可能会发现:在每一时刻,可能同时存在多个入度为0的顶点,选择注:表中c1~c9列表示的是每个顶点的入度。
下面我们讨论一下如何实现的算法。假设有向图以的形式存储。
下面给出算法实现的基本过程:
{ 将所有入度为0的顶点入栈;
当栈非空时重复执行下列操作:
从栈中退出顶点k;
(1)将k顶点的信息输出;
(2)将与k邻接的所有顶点的入度减1。
#defineMAX_VERTEX_NUM30//最大顶点个数
typestructEdgeLinklist{//边结点
structEdgeLinklist*
typedefstructVexLinklist{//顶点结点
//记录顶点的入度
EdgeLinklist*
}VexLinklist,AdjList[MAX_VERTEX_NUM];
下面是的完整算法。
StatusTopologicalSort(AdjListadj)
{InitStack(s);
for(i=0;i&MAX_VERTEX_NUM-1;i++)
if(adj.indegree==0)Push(s,i);
(!StackEmpty(s)){
Pop(s,i);(i);
for(p=adj.p;p=p-&next){
adj.indegree-=1;
if(adj.indegree==0)Push(s,i);}
图重要的图
:每一对不同顶点间都有边相连的的图,记作Kn。
:顶集,且每一条边都有一个顶点在X中,而另一个顶点在Y中。
:二分图G中若任意两个X和Y中的顶点都有边相连。若,则图G记作Km,n。
:如果图中所有顶点的度皆相等,则此图称为正则图
图基本概念
h图是一个有序对&V,E&,V是结点集,E是边集,当½V½,½E½有限时,&V,E&称为有限图;否则称无限图.
h无向边, 与无序结点(v,u)相关联的边;有向边,与有序结点&v,u&相关联的边.
h,每条边都是无向边的图,记作G=&V,E&; 每条边都是有向边的图,记作D=&V,E&.
h混合图,既有有向边,也有无向边的图.
h,仅有一个结点的图;,边集为的图&V, &AE&,即仅有结点的图.
h自回路(环),关联于同一个结点的边.
h无向平行边,联结相同两个结点的多于1条的无向边;有向平行边,联结两个结点之间的多于1条且方向相同的有向边.
h简单图,不含平行边和自回路的图.
h在G=&V,E&中,与结点v(&IV)关联的边数,即为结点度数deg(v)或d(v).;在中,结点v的和入度之和为度数.
h在有向图D=&V,E&中,以v(&IV)为起点的边之条数为出度deg+(v);以v(&IV)为终点的边之条数为入度deg-(v)..
h最大度数,D(G)=max{d(v)½v&IV};最小度数,d(G)=min{d(v)½v&IV}
h有n个结点的且每对结点都有边相连无向简单图,无向完全图Kn. 此时有 ;有n个结点的且每对结点之间都有两条方向相反的边相关连的有向简单图为有向完全图,.此时有
h设G=&V,E&, V,E的子集V&,E&构成的图G&=&V&,E&&是图G的子图;若G&&IG且G&¹G,(V&&IV或E&&IE),G&是G的真子图.
h生成子图,设图G=&V,E&, 若E&&IE, 则图&.V,E&&是&V,E&的生成子图. 即结点与原图G相同的子图,为生成子图.
h补图`G=&V,E&&,设G=&V,E&, 以V为结点集,以使G成为完全图所添加的边为边集E&的图,就是图G的补图G&,.,即&V,E&EE&&是完全图, 其中E&CE&=&AE.
h图的,设G1=&V1,E1&和G2=&V2,E2&, 存在f:V1&V2,"(vi,vj)&IE1, 当且仅当 (f(vi),f(vj))&IE2,且(vi,vj)与 (f(vi),f(vj))的重数相同. 则G1≌G2.
同构充分条件:建立两个图的对应关系,这个关系是双射函数.
同构必要条件:①结点数相同;②边数相同;③度数相同的结点个数相同.
图图的遍历
图的方法有法和广度(宽度)优先搜索法。
深度优先搜索法是树的的推广,它的基本思想是:从图G的某个顶点v0出发,访问v0,然后选择一个与v0相邻且没被访问过的顶点vi访问,再从vi出发选择一个与vi相邻且未被访问的顶点vj进行访问,依次继续。如果当前被访问过的顶点的所有邻接顶点都已被访问,则退回到已被访问的顶点序列中最后一个拥有未被访问的相邻顶点的顶点w,从w出发按同样的方法向前遍历,直到图中所有顶点都被访问。其如下:
Booleanvisited[MAX_VERTEX_NUM];//访问标志数组
Status(*VisitFunc)(intv);//VisitFunc是访问函数,对图的每个顶点调用该函数
voidDFSTraverse(GraphG,Status(*Visit)(intv)){
VisitFunc=V
for(v=0;v&G.++v)
visited[v]=FALSE;//访问标志数组初始化
for(v=0;v&G.++v)
if(!visited[v])
DFS(G,v);//对尚未访问的顶点调用DFS
voidDFS(GraphG,intv){//从第v个顶点出发地图G
visited[v]=TRUE;VisitFunc(v);//访问第v个顶点
for(w=FirstAdjVex(G,v);w&=0;w=NextAdjVex(G,v,w))
//FirstAdjVex返回v的第一个邻接顶点,若顶点在G中没有邻接顶点,则返回空(0),//若w是v的邻接顶点,NextAdjVex返回v的(相对于w的)下一个邻接顶点。
//若w是v的最后一个,则返回空(0)。
if(!visited[w])
DFS(G,w);//对v的尚未访问的邻接顶点w调用DFS
图的是树的按层次遍历的推广,它的基本思想是:首先访问初始点vi,并将其标记为已访问过,接着访问vi的所有未被访问过的邻接点vi1,vi2, …, vi t,并均标记已访问过,然后再按照vi1,vi2, …, vi t的次序,访问每一个顶点的所有未被访问过的,并均标记为已访问过,依次类推,直到图中所有和初始点vi有路径相通的顶点都被访问过为止。其非如下:
Booleanvisited[MAX_VERTEX_NUM];//访问标志数组
Status(*VisitFunc)(intv);//VisitFunc是访问函数,对图的每个顶点调用该函数
voidBFSTraverse(GraphG,Status(*Visit)(intv)){
VisitFunc=V
for(v=0;v&G.vexnum,++v)
visited[v]=FALSE;
initQueue(Q);//置空辅助队列Q
for(v=0;v&G.++v)
if(!visited[v]){
visited[v]=TRUE;VisitFunc(v);
EnQueue(Q,v);//v入队列
while(!QueueEmpty(Q)){
DeQueue(Q,u);//队头元素出队并置为u
for(w=FirstAdjVex(G,u);w&=0;w=NextAdjVex(G,u,w))
if(!Visited[w]){//w为u的尚未访问的邻接顶点
Visited[w]=TRUE;VisitFunc(w);
EnQueue(Q,w);
.Flooved[引用日期]
企业信用信息

参考资料

 

随机推荐