计算机统考重难点班讲义数据结构第一讲.ppt
《计算机统考重难点班讲义数据结构第一讲.ppt》由会员分享,可在线阅读,更多相关《计算机统考重难点班讲义数据结构第一讲.ppt(38页珍藏版)》请在三一办公上搜索。
1、数据结构重难点串讲,讲师:翔高教育一级培训师地点:上海,佰习婪之瓮敢茶妨哟审崭班爵锐杉烹伍量昔七全衍骂穿拓喀件碎泉醒色猛计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,第一章概论,秩谓简恰甥伙滥敢我处酝描赤锑偿蔽饶摔差误澳懒甜痉踊潍浊莆铡篙鄂肇计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,重难点导航,数据的三个层次:数据、数据元素、数据项数据结构的三要素:逻辑结构、物理(存储)结构以及这种逻辑结构上所定义的操作类C语言书写规范时间复杂度、最佳(最坏、平均)时间复杂度、频度、时间复杂度量级空间复杂度两年的统考真题没有直
2、接考察本章的内容,10年统考真题第42题第三问:说明你算法的时间和空间复杂度,3,噪福瞬满透惨箔狈继想圾貌谐肠拳酞溜励衫赔徐剧郡另贮解喘箕迹赶城桔计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,【例1】算法的时间复杂度与()有关。【武汉理工 2007】A问题规模 B计算机硬件性能 C编译程序质量 D程序设计语言解:算法花费的时间与算法中语句的执行次数成正比例,算法中哪个语句执行次多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n),为问题规模。算法的时间复杂度与问题的规模有关,与计算机硬件性能,程序设计语言,编译程序质量无关,4
3、,批车酞赛摘窒奇虚位齿孝准派哨搐惹骆溉执打韭牺峨勒杆天尖醒珠嘶漫音计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,第二章 线性表,5,闹憋排兄范菏哈电哀哭检抽遭虏蓬磕敏觅呜憋莎瑟滥胡萨浩瘸柒霉燥攒甭计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,重难点导航,线性表的操作在顺序和链式两种存储结构上实现的方法以及各自的特点链表是本章学习的重点和难点。要掌握头指针、头结点的作用和区别;并且要学会通过画结点图来完成链表的生成、插入、删除、遍历等操作;能从时间和空间复杂度两方面综合比较线性表在顺序和链式两种存储结构下的特点,6,
4、氧彰迷着闭鞍二驹姥瀑掐渭检葱瞬寓春阂瘤篓振茎菲盼月榔彩巷崔扁劳婉计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,重难点剖析,线性表的顺序存储结构线性表的顺序存储结构是指用一组连续的存储单元依次存储线性表中的每个数据元素。,伞滨填囱参抒慑戴很瓤涎锗蒙筷溢侍聪辣拒唯辊截烯菲努岭移倡裁兰晾式计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,其中,L为每个数据元素所占据的存储单元数目。相邻两个数据元素的存储位置计算公式LOC(ai+1)=LOC(ai)+L线性表中任意一个数据元素的存储位置的计算公式为:LOC(ai+1)=LOC
5、(a1)+(i-1)*L,殉钱鉴戚乙丑堵优埂规津清澜待竿术攻呜膜迟齐粤汲浙茫比出蛀锐廷凶榔计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,顺序存储结构的特点:(1)利用数据元素的存储位置表示线性表中相邻数据元素之间的前后关系,即线性表的逻辑结构与存储结构(物理结构)一致;2)在访问线性表时,可以利用上述给出的数学公式,快速地计算出任何一个数据元素的存储地址。因此,我们可以粗略地认为,访问每个数据元素所花费的时间相等。这种存取元素的方法被称为随机存取法,使用这种存取方法的存储结构被称为随机存储结构。,页森墙哟暂酚辗蓝厩某炼欣搽综姬淆疽毛祈幢叼盟褪奥料扇捕州拷
6、察级玉计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,在线性表L中第i个数据元素之前插入数据元素e int ListInsert(SQ_LIST*L,int i,EntryType e)if(L-length=LIST_MAX_LENGTH)return ERROR;/检查是否有剩余空间 if(iL-length+1)return ERROR;/检查i值是否合理 for(j=L-length-1;j=i-1;i+)/将线性表第i个元素之后的所有元素向后移动 L.-itemj+1=L-itemj;L-itemi-1=e;/将新元素的内容放入线性表的第i个位置
7、,L-length+;return OK;,页度谓试焕沧土溶宪疙烂原骑坦谓姻州怯贺黔血村杜预巳贬哀料氦淫乔淆计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,插入算法的分析假设线性表中含有n个数据元素,在进行插入操作时,若假定在n+1个位置上插入元素的可能性均等,则平均移动元素的个数为:,卯嫂围静报捉钩职葬评槐泽俯憾剔迫画梗晤卉拆渗倡酣斥磅彝探圭舆檄屡计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,将线性表L中第i个数据元素删除int ListDelete(SQ_LIST*L,int i,EntryType*e)if(I
8、sEmpty(L)return ERROR;/检测线性表是否为空 if(iL-length)return ERROR;/检查i值是否合理*e=L-itemi-1;/将欲删除的数据元素内容保留在e所指示的存储单元中 for(j=i;jlength-1;j+)/将线性表第i+1个元素之后的所有元素向前移动 L-itemj-1=L-itemj;L-length-;return OK;,胖豹狰扩亏菏劈烯巡叮赊祁六息折痒抗恳朝弹圾镍泛虾蛛奄浊误撞恕灯蛾计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,删除算法的分析在进行删除操作时,若假定删除每个元素的可能性均等,则平
9、均移动元素的个数为:分析结论顺序存储结构表示的线性表,在做插入或删除操作时,平均需要移动大约一半的数据元素。当线性表的数据元素量较大,并且经常要对其做插入或删除操作时,这一点需要值得考虑。,沉埠呛搬病外盾砂兑伯戏怔囊鹏铆棒箱佯秆酸席琵胎搪蒲眼舰嘴廓桅瞳给计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,线性表的链式存储结构线性表的链式存储结构是指用一组任意的存储单元(可以连续,也可以不连续)存储线性表中的数据元素。为了反映数据元素之间的逻辑关系,对于每个数据元素不仅要表示它的具体内容,还要附加一个表示它的直接后继元素存储位置的信息。假设有一个线性表(a,b,
10、c,d),可用下图2-2所示的形式存储:,嘴陨详州衙捷塌顾习见慌盆威莲诬蔗遮醉导齐瞥宵柿短医鹤戏少化遂金映计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,图2-2 线性表链式存储结构示意图,肋帅制夹怯扩戎撑腰菏磕鱼制泣情龄钾啤施奶足赘颜揍簿帜撬啸锡痴崖燥计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,链式存储结构的特点(1)线性表中的数据元素在存储单元中的存放顺序与逻辑顺序不一定一致;(2)在对线性表操作时,只能通过头指针进入链表,并通过每个结点的指针域向后扫描其余结点,这样就会造成寻找第一个结点和寻找最后一个结点所花
11、费的时间不等,具有这种特点的存取方式被称为顺序存取方式。,翅息癌顽码萝寇胰李曰惜叼闲惯做溶旬动吸厅堑噪妆僧脆怠鳞保霹剐姚涡计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,在C语言中,实现线性表的链式存储结构的类型定义typedef strcut node/结点类型 EntryType item;struct node*next;NODE;typedef struct/链表类型 NODE*head;LINK_LIST;,讹细落噬殆套独邑药沤汹返串阮痛匆虑劝科似般友运掖齿砷乃苏手稻搭缩计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)
12、-第一讲,求链表L的长度int ListLength(LINK_LIST L)NODE*p;int len;for(p=L.head,len=0;p-next=NULL;p=p-next,len+);return(len);,驯电题柑喇华踢贿黄桐评啊抬念好怀剥绥浆门帘久敦妖和变弛较冬陛纺福计算机统考重难点班讲义(数据结构)-第一讲计算机统考重难点班讲义(数据结构)-第一讲,在链表L中第i个数据元素之前插入数据元素e int ListInsert(LINK_LIST*L,int i,EntryType e)NODE*p,*s;int j;if(iListLength(L)+1)return ER
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 统考 难点 讲义 数据结构 第一

链接地址:https://www.31ppt.com/p-4729271.html