已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,NOIPCourse3,ByPengKejingSCAU-GIS,.,2,SECTIONA.算法与数据结构基本知识,.,3,什么是数据结构,一种存在于计算机内存或文件中的数组组织方法。根据一定的功能抽象出来的。仅存在于人的思维之中,是一种抽象的结构。人们研究这些抽象的结构如何在计算机之上进行实现。,.,4,线性表,能够实现如下功能的结构:维护一个列表。可以插入节点,删除节点,查找节点实现方法:数组链表复杂度分析,.,5,一种特殊的链表实现方法,用巨型数组模拟内存省去申请内存的步骤省去使用指针的步骤,.,6,特殊的线性表,栈Stack特点:先进后出队列Queue特点:先进先出,.,7,树,定义:特殊的形态:二叉树。二叉树的三种普通遍历和一种特殊遍历前序中序后序层次一些扩展问题:使用前序/后序和中序遍历恢复树的结构,.,8,树,表达式与树三种遍历的实现方法,一般二叉树的存储结构前序遍历的非递归实现树作为一种存储结构二叉排序树平衡二叉树旋转理想的平衡情况下,树作为存储结构,每次查找、插入、删除的复杂度为O(logn),.,9,图,图上的一些问题遍历最短路最小生成树最大流匹配关节点,.,10,最小生成树,.,11,最大流问题,.,12,二分图匹配,.,13,图的存储方法,邻接矩阵注意有向图和无向图的存储缺点:存储空间耗费为O(n2),存储的点的数目一般不超过3000个遍历图时耗时邻接表使用数组模拟链表可以应对10万个以上的点,.,14,最小生成树的算法,Prim算法一开始有一个顶点v0每次找连接“未添加到最小生成树的顶点”与“已添加到临时最小生成树的顶点”的最短边Kruskal算法*对边进行排序(从小到大)按顺序选取边,每添加一条边,就会连接一个新的节点需要一个结构来判断某些点是否已经连在一起,.,15,Prim算法,原图,准备在此图上求最小生成树,.,16,Prim算法,顶点D被任意选为起始点。顶点A、B、E和F通过单条边与D相连。A是距离D最近的顶点,因此将A及对应边AD以高亮表示。,.,17,Prim算法,下一个顶点为距离D或A最近的顶点。B距D为9,距A为7,E为15,F为6。因此,F距D或A最近,因此将顶点F与相应边DF以高亮表示。,.,18,Prim算法,算法继续重复上面的步骤。距离A为7的顶点B被高亮表示。,.,19,Prim算法,在当前情况下,可以在C、E与G间进行选择。C距B为8,E距B为7,G距F为11。E最近,因此将顶点E与相应边BE高亮表示。,.,20,Prim算法,这里,可供选择的顶点只有C和G。C距E为5,G据E为9,故选取C,并与边EC一同高亮表示。,.,21,Prim算法,顶点G是唯一剩下的顶点,它距F为11,距E为9,E最近,故高亮表示G及相应边EG。,.,22,Prim算法,现在,所有顶点均已被选取,图中绿色部分即为连通图的最小生成树。在此例中,最小生成树的权值之和为39。,.,23,Kruskal算法,.,24,Kruskal算法,.,25,Kruskal算法,.,26,Kruskal算法,.,27,Kruskal算法,.,28,Kruskal算法,Thenext-shortestarcsareABandBE,bothwithlength7.ABischosenarbitrarily,andishighlighted.ThearcBDhasbeenhighlightedinred,becausetherealreadyexistsapath(ingreen)betweenBandD,soitwouldformacycle(ABD)ifitwerechosen.,.,29,Kruskal算法,.,30,Kruskal算法,.,31,最短路算法Dijkstrasalgorithm,NOIP原题有6个城市,任何两个城市之间都有一条道路连接,6个城市两两之间的距离如下表所示,则城市1到城市6的最短距离为_。,.,32,最短路算法Dijkstrasalgorithm,.,33,Dijkstra,.,34,Dijkstra,.,35,Dijkstra,.,36,Dijkstra,.,37,Dijkstra,.,38,Dijkstra,.,39,图的遍历,遍历的意思就是按照一定的顺序,访问整个图的所有顶点深度遍历DFS广度遍历BFS,.,40,SECTIONC.一些Pascal语言的知识,.,41,控制语句,Break语句Continue语句Exit函数或过程,.,42,指针,NOIP原题,看程序,写代码:vara,b:integer;x,y:integer;procedurefun(a,b:integer);vark:integer;begink:=a;a:=b;b:=k;end;begina:=3;b:=6;x:=a;y:=b;fun(x,y);writeln(a,b);end.,.,43,指针,typepint=integer;vara,b:integer;x,y:pint;procedurefun(a,b:pint);vark:integer;begink:=a;a:=b;b:=k;end;begina:=3;b:=6;x:=a;y:=b;fun(x,y);writeln(a,b)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 亳州市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)附答案详解(b卷)
- 2025年广东省广州市辅警招聘《公安基础知识》真题及答案解析
- 舟山市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解(真题汇编)
- 2026年宿州市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及参考答案详解
- 三亚市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及答案详解参考
- 黑河市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)带答案详解(完整版)
- 2025年高校综合管理岗位试题及答案
- 2025年高危妊娠测试题及答案
- 2026年来宾市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)及参考答案详解
- 贵阳市农村信用社联合社秋季校园招聘笔试备考题库(浓缩500题)含答案详解(b卷)
- 意图识别关键技术问题探讨
- 娱乐场所管理办法西藏
- 个人养老金课件
- 赛力斯深度研究报告:问界爆款引领携手华为筑底中长期发展
- 铝锭加工居间合同协议书
- 数字游民现象:城乡融合视角下的生成机理与发展路径研究
- 沟槽开挖隐蔽工程质量验收记录
- 亲情主题课件
- 碳族元素大学课件
- 小红书《2025家生活场景需求洞察白皮书》
- 光伏场区围栏工程施工合同范本
评论
0/150
提交评论