严蔚敏最新《数据结构》电子教案_第1页
严蔚敏最新《数据结构》电子教案_第2页
严蔚敏最新《数据结构》电子教案_第3页
严蔚敏最新《数据结构》电子教案_第4页
严蔚敏最新《数据结构》电子教案_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

北京林业大学信息学院

*

李冬梅

数据结构北京林业大学信息学院

*

编程基础计算机及相关专业考研考博课程计算机等级考试课程程序员考试课程为什么要学习数据结构北京林业大学信息学院

*

课程学习指导1.提前预习、认真听课、按时完成书面及上机作业2.注意先修课程的知识准备离散数学、C语言3.注意循序渐进:基本概念、基本思想、基本步骤、算法设计4.注意培养算法设计的能力理解所讲算法、对此多做思考:若问题要求不同,应如何选择数据结构,设计有效的算法课程特点:内容抽象、概念性强、内容灵活、不易掌握北京林业大学信息学院

*

平时成绩:30%作业、小测验、实验课堂纪律无故迟到:无故旷课:-5上机:玩游戏、上网聊天期末成绩:70%(闭卷笔试)考核方式北京林业大学信息学院

*

教材和参考书教材:《数据结构》978-7-115-23490

严蔚敏,李冬梅,人民邮电出版社出版

参考书:《数据结构C语言版》,严蔚敏,清华大学出版社《数据结构——用面向对象方法与C++描述》,殷人昆等,清华大学出版社

*

第1章绪论1.了解数据结构研究的主要内容2.掌握数据结构中涉及的基本概念3.掌握算法、算法的时间复杂度及其分析的简易方法

教学目标北京林业大学信息学院

*

1.1数据结构的研究内容1.2基本概念和术语1.3抽象数据类型的表示与实现1.4算法与算法分析教学内容北京林业大学信息学院

*

N.沃思(NiklausWirth)教授提出:

程序=算法+数据结构电子计算机的主要用途:早期:主要用于数值计算。后来:

处理逐渐扩大到非数值计算领域,能处理多种复杂的具有一定结构关系的数据1.1数据结构的研究内容北京林业大学信息学院

*

书目自动检索系统登录号:书名:作者名:分类号:出版单位:出版时间:价格:书目卡片书目文件按书名按作者名按分类号索引表线性表北京窑林业画大学竟信息碗学院*人机劲对奕物问题树……..……..…...…...…...…...北京间林业凤大学爹信息闷学院*/(r孝oo撕t)bi熟nli迁bus例eret兽cma粗thdsswyi馋nta督oxi户eSt赠ac仅k.熄cp坝pQu乡丰eu类e.代cp杨pTr劈燕ee挠.c絮pp文件侵系统括的系丸统结登构图树北京床林业额大学屿信息申学院*多叉卷路口侵交通肉灯管邪理问滚题CEDABABACADBABCBDDADBDCEAEBECED图顶点叫:一条联通路连线参:不能狠同时斜通行染色发:有连竿线的捉两个殖顶点璃不能培具有恰相同像颜色北京苍林业乐大学虹信息利学院*求解统非数答值计扶算的灶问题糖:设计纷出合梳适的屿数据伙结构妈及相蔑应的者算法即:呼首先炉要考执虑对相计关的嫁各种宝信息海如何个表示物、组宽织和录存储伞?数据抽结构签的研击究内啊容为团:研究辉非数累值计惭算的泰程序他设计司问题北中计犬算机鞋的操作鲁对象以及疑它们骗之间踪蝶的关系重和操曾作。北京剩林业晶大学右信息涛学院*数据仰结构副课程籍的形裕成和辱发展热:形成挨阶段催:60年代叛初期弯,“数据蔑结构”有关忠的内峡容散尽见于痰操作董系统焦、编条译原泽理和押表处址理语勤言等馆课程粘。19狠68年,“数据群结构”被列石入美贯国一牲些大攻学计深算机转科学著系的婆教学母计划采。发展阻阶段躬:数据蒜结构美的概遣念不衬断扩开充,信包括检了网介络、遮集合款代数扣论、慰关系泊等“离散亡数学旺结构”的内弟容。70年代柴后期归,我胀国高令校陆哥续开乎设该理课程条。北京慎林业字大学辰信息前学院*《数据消结构》所处皱的地抓位:介于昂数学刷、计忘算机不硬件馅和计怀算机协软件记三者鹅之间播的一汉门核唉心课巧程北京牧林业映大学休信息低学院*数据优结构篮在计临算机镜学科建中的顿地位北京葬林业螺大学幻玉信息叔学院*课程剖目的能够殿分析丸研究千计算办机加逼工的鼠对象肥的特顺性,凳获得勒其逻辑绳结构,根鸭据需要求,验选择骨合适存贮穴结构鞠及其杂相应周的算粉法;学习镇一些常用烈的算秆法;复杂指程序仰设计扯的训助练过叹程,谦要求羽编写胞的程另序结构蛙清楚的和正摇确易辉读;初步绩掌握陪算法算的时间愿分析治和空感间分苏析技术北京额林业透大学闯信息酬学院*1、数飞据(da浇ta微)—所有筹能输昨入到械计算炒机中胶去的描述雕客观蝴事物哈的符视号数值招性数吵据非数艺值性循数据傍(多卫媒体六信息乘处理避)2、数召据元镜素(da绘ta嫩e松le顺me匀nt)—数据膊的基本旅单位,也进称结估点(no晕de)或记型录(re励co伸rd)3、恨数据昼项(da向ta马i香te疑m)—有独挑立含姓义的牙数据最小跳单位,也懂称域殃(fi该el察d)三者和之间悔的关摩系:哑数据>数据召元素>数据辉项例:匆学生扭表>个人龙记录>学号纤、姓拉名……1.农2基本勒概念吨和术尾语北京封林业勉大学戴信息蠢学院*整数经数据划对象N评=剥{姑0,1浮,芦2诵,…}学生卷数据项对象学生揭记录滔的集歪合4、数据骆对象(D测at孟a储Ob乡丰je卫ct围):相同秆特性数据做元素嫩的集牢合,绣是数辉据的恨一个坛子集北京万林业殖大学标信息林学院*5、数很据结驰构(Da预ta株S促tr月uc扯tu掠re)是相振互之括间存嚷在一偷种或呀多种胃特定下关系倒的数禽据元列素的养集合蜘。数据沟结构弓是带户“结丹构”种的数赴据元倒素的竭集合凶,“峡结构划”就晓是指吃数据症元素敬之间歇存在洒的关棚系。北京织林业泛大学埋信息疑学院*数据洋结构亏的两面个层焰次:逻辑中结构--苹-数据驰元素赛间抽开象化狐的相须互关良系,爆与数女据的诵存储借无关漠,独凶立于璃计算示机,杆它是剖从具情体问纹题抽污象出贡来的呜数学叼模型栏。存储老结构咳(物庭理结棵构)--脉--数据肚元素产及其珠关系激在计烛算机劳存储覆器中模的存虚储方蜘式。北京塞林业拔大学沾信息怖学院*划分喇方法铁一(1)线伪性结管构--泉--有且贞仅有政一个晚开始垄和一失个终怜端结游点,留并且谣所有割结点膝都最列多只正有一荒个直榆接前沃趋和夫一个香后继英。例如眼:线州性表警、栈悲、队沸列、郑串(2)非粗线性仰结构--垫--一个呀结点闯可能择有多麦个直肠接前仅趋和鼻直接袄后继排。例如系:树拢、图逻辑芽结构北京图林业脱大学咽信息手学院*线性驱结构——一个处对一子个,羽如线把性表长、栈难、队额列树形卸结构——一个絮对多信个,步如树集合——数据属元素咐间除桨“同誓属于怖一个把集合愉”外赌,无惊其它披关系图形往结构——多个倚对多纲个,习如图逻辑乎结构划分弯方法延二北京弓林业冻大学息信息腔学院*存储乡丰结构坏分为握:顺序存储封结构——借助恨元素扣在存恢储器挤中的相对桥位置来表东示数据信元素柳间的斑逻辑殖关系链式存储标结构——借助矿指示裙元素蔬存储掌地址榴的指针表示吐数据元素竖间的茄逻辑议关系存储结构北京立林业粘大学很信息础学院*元素n……..元素i……..元素2元素1LoLo+mLo+(i-1)*mLo+(n-1)*m存储地址存储内容Loc(元素i)=Lo+(i-1)*m顺序存储北京妇林业吊大学迷信息蹄学院*15南36元素214邻00元素113徒46元素3∧元素413脑45h存储地址

存储内容

指针1345

元素1

14001346

元素4∧

…….

……..

…….

1400

元素21536

…….

……..

…….1536

元素31346链式粪存储h北京黄林业第大学执信息派学院*逻辑咐结构保和存盟储结摔构都菌相同,但运仿算不碗同,则数译据结良构不功同.例如,栈与印队列对于纲一种衡数据刚结构,常见伟的运丈算插入删除修改查找排序数据萍的运深算北京狠林业项大学覆信息被学院*数据接的逻酸辑结鹅构数据腔的存块储结舞构数据醉的运维算:牺插入羽、删互除、炼修改扇、查彩找、分排序线性寄结构非线拴性结雾构顺序伯存储链式处存储线性较表栈、贯队列串、口数组树形央结构图形天结构逻辑缠结构唯一存储竞结构不唯偶一运算毁的实姥现依赖溉于存储畅结构北京浅林业有大学店信息仔学院*定义附:在一拖种程倦序设页计语蒙言中垮,变设量所法具有印的数现据种饲类数据剑类型FO闭RT啦RA浮N语言旷:整型梳、实公型、茎和复份数型C语言:基本霸数据井类型两:ch员ar疗in钞t壁f缎lo居at黄do茎ub慈le断vo朋id构造拥数据灶类型娇:数组构、结宁构体筋、共抵用体浓、文背件数据派类型颗是一材组性雀质相矮同的败值的园集合,以及欠定义绩于这笔个集虑合上惕的一换组运飞算的叶总称北京锁林业悄大学盼信息齐学院*抽象熊数据模类型(A愧DT俭s:毒A仇bs杜tr窜ac杨t炒D洽at勇a偿Ty础pe斧s)更高稳层次辱的数夫据抽咸象由用归户定抛义,振用以还表示鹊应用砍问题劳的数据洞模型由基本很的数源据类迹型组成,并包站括一组惭相关砖的操作抽象巴数据阶类型北京莫林业夺大学室信息衣学院*抽象摇数据罢类型可以守用以蚀下的鲁三元锹组来跪表示池:AD痰T祸=(D,S,P)数据睁对象D上的饱关系络集D上的盆操作居集AD振T抽象浆数据抱类型明名{数据对象:<数据膜对象奏的定摘义>数据关系:<数据麦关系佩的定染义>基本操作:<基本禽操作名的定屈义>}柏AD枪T抽象时数据垦类型名AD敬T常用洁定义钥格式北京写林业吃大学缓信息碑学院*抽象苗数据饿类型查找搭插狼入义删狡除则修蜡改线性遇表接口挣或用评户界盲面数据院类型缠的物关理实评现封预装信息拢隐蔽和数据娘封装,使陶用与脊实现弟相分冲离北京体林业括大学崭信息益学院*1.连3抽象忧数据懂类型楚的表斩示与位实现抽象窝数据医类型汉可以廉通过固有夕的数据玩类型码(如考整型哗、实舌型、村字符和型等草)来腥表示材和实禁现。它有段些类雄似C语言哀中的结构喊(st哪ru敏ct巩)类型,但临增加尘了相堤关的操作教材侄中用膊的是类C语言笛(介与于伪撤码和C语言恢之间芬)作玻为描窝述工僵具但上行机时承要用余具体廉语言味实现为,如C或C+猾+等北京哲林业络大学开信息摇学院*(1溉)预定抄义常秩量及想类型//函数算结果烤状态筒代码#d尝ef锹in代e清OK怖1#d与ef素in喊e驼ER盾RO象R霜0#d肃ef税in假e父IN惊FE馋AS滤IB丸LE捧-白1#d扎ef库in减e首OV闭ER征FL候OW落-掀2//台S着ta像tu盟s是函睡数返铸回值苹类型设,其准值是尝函数绣结果归状态碎代码叨。ty飞pe浮de轮f裙in方t哗St使at胞us兽;北京琴林业济大学焰信息影学院*(2钳)数据盲元素报被约丧定为El孔em水Ty奶pe类型笋,用户菌需要薯根据拦具体盒情况盟,自鹊行定自义该也数据奇类型泰。(3惊)算法摧描述枝为以价下的针函数攻形式自:函数盖类型榨函盏数名维(函怒数参猛数表原){语句坑序列撑;}北京皂林业夜大学脸信息嘱学院*(4)内温存的峡动态民分配辣与释称放使用ne促w和de源le返te动态慌分配届和释咬放内贱存空萝间分配肆空间趟指父针变咐量=n摔ew数据轧类型;释放赏空间de鞋le千te指针曲变量;(5)赋撇值语训句(6)选反择语鼠句(7)循碧环语阶句北京病林业成大学皇信息锈学院*(8)使用露的结伍束语信句形辩式有霞:函数晋结束外语句re醒tu耀rn循环呢结束含语句br云ea葬k;异常捉结束殖语句ex袍it(异蛾常代付码)杨;北京线林业贿大学誓信息梢学院*(9)输入汁输出狸语句最形式顷有:输入博语句ci仍n乒(锡sc姐an逼f(申)液)输出爬语句co塘ut吉(得pr辆in妙tf牌(热))(10)扩展接函数结有:求最广大值ma毕x求最肾小值mi果n北京枝林业革大学胡信息膝学院*算法店定义婶:一个抱有穷驰的指青令集,这扛些指忧令为忌解决披某一臣特定狗任务过规定颈了一状个运击算序影列算法吊的描厚述:自然肃语言流程贼图程序境设计体语言伪码1.准4算法递和算蔑法分竭析北京篇林业刮大学袜信息豪学院*算法弦的特烤性:输入有0个或勺多个食输入输出有一坟个或咱多个毕输出(处理裤结果)确定卖性每步浙定义豆都是勿确切推、无骨歧义姐的有穷菌性算法堵应在怖执行务有穷满步后秀结束有效并性每一斧条运续算应栏足够画基本北京弊林业肆大学杠信息鼻学院*算法舌的评译价正确根性可读良性健壮祖性高效匆性(时间演代价和空抹间代伤价)北京宽林业复大学渔信息炮学院*算法洁效率挖:用伙依据亲该算挡法编炊制的云程序誉在计容算机竹上执怕行所到消耗污的时司间来奋度量算法皆的效里率的亚度量事后歼统计事前妨分析为估计北京庙林业挑大学仓信息守学院*1.事后姜统计样:利用叛计算窑机内氧的计即时功坝能,设不同度算法猛的程脂序可意以用尤一组紫或多肃组相讽同的积统计它数据局区分缺点摸:必丢须先庙运行宋依据不算法馆编制贡的程钱序所惯得时运间统骑计量孤依赖存于硬抚件、熊软件把等环左境因哨素,轧掩盖疤算法粘本身皂的优双劣北京鸽林业诊大学钢信息阳学院*2.事前袭分析具估计卖:一个顾高级孙语言劫程序阀在计煎算机吸上运浪行所齿消耗粮的时低间取犁决于看:依款据的届算法碧选用介何种下策略问血题的起规模程标序语辉言编印译程轨序产次生机煎器代饲码质情量机倡器执劣行指污令速教度同一改个算幸法用概不同改的语石言、暴不同彩的编京译程打序、介在不杆同的垮计算帖机上凳运行露,效献率均劈燕不同畏,——究—使用绝对替时间营单位衡量逼算法丙效率嗓不合畜适北京伶林业山大学退信息般学院*算法僵中关键级操作(循项环和典递归计)重复汉执行住的次每数是讨问题寇规模n的某普个函闷数f(箩n)羡,算法震的时赛间量绣度记慕作:T(惩n)脖=O(f脸(n有))时间委复杂陵度的薪渐进欣表示还法渐进纯符号妻(O)的撒定义忠:当栏且仅粪当存代在一鞭个正高的常呢数C和n0,使利得对污所有兰的n扰脂n0,有T(拌n)真Cf思(n典),则T(刷n)睡=熔O乔(f阿(n购))表示顾随着n的增缺大,间算法菌执行予的时声间的倦增长抢率和f(晶n)的增虏长率芒相同饱,称渐近桂时间守复杂赖度。北京位林业败大学浴信息肠学院*n至*投n阶矩乐阵加讯法:fo塘r(街i膜=谣0谈;市i蹲<剂n;泉i叨++惰)fo答r(全j耗=帖0铲;扇j炎<认n;稳j奏++论)c[号i]稍[j祸]云=强a[逆i]锈[j昼]且+铸b[基i]拖[j纸];语句棒的频妥度(Fr饱eq沟ue鸭nc颤y检Co拖un战t傍):重复帮执行全的次摊数:n*疫n;T(炕n欧)拜=狼O漂(茂n2)即:伍矩阵布加法双的运维算量饶和问讽题的罪规模n的平睡方是测同一捞个量友级北京混林业焦大学代信息役学院*变量幕计数x执=封0;y午=孔0;fo刃r(in妇tk备=猫0;k版<陵n;k爆++剩)x垦++;fo摄r(in等ti揉=招0;i磁<树n;i+倘+复)fo研r(in盟tj木=烤0;j鸟<圈n;j+必+宫)y雕++;T1士(n料)墨=授O(责1)T2惊(n共)茫=唱O(丘n)T3疾(n改)中=光O(欧n2)T(决n)这=损T响1(两n)芒+T荒2(做n)懒+T训3(擦n)鸽=同O柱(东ma逐x(栗1卸,膝n,似n2)京)=藏O(侦n2)北京塔林业附大学轮信息胡学院*vo腐idex座am设(fl歉oa伤tx[抹]婆[付],in牵tm,in板tn逢){fl皇oa虾tsu蔑m羊[惯];fo进r(in艇ti致=桃0;i裹<贺m;i+弊+采){//己x中各奥行su孝m[公i]垫=铸0兴.0;//数据引累加fo伍r(in址tj西=衡0;j荒<搭n;j+港+贪)su故m[翠i]船+绪=饺x[寨i]苹[j照];//关键啊操作}fo宰r(斯i判=荣0;i验<崇m;i+短+盘)//打印潮各行办数据绕和co钞ut厘<鬼<萄i艘<<借“浆:摄”既<广<s谦um老[骑i]烈<些<泻en联dl固;//关键鱼操作}渐进寨时间沸复杂绸度为O(ma迹x(m*狭n,m))算法吃的时篇间复顺杂度渣是由嵌套赢最深汽层语句如的频枪度决亚定的北京强林业叼大学陕信息甲学院*例1:N×糟N矩阵嘉相乘fo法r(跨i=奴1;椒i<考=n骗;i沿++协)fo系r(捏j=烤1;家j<东=n置;j晕++故){c简[i捐][动j]作=0督;fo拣r(遮k=稻1;纺k<碍=n时;k盛++耽)c[旺i]蛇[j敏]=语c[涂i]钱[j丽]+世a[冻i]榜[k湿]*舞b[住k]帐[j习];}算法中的基本操作语句为c[i][j]=c[i][j]+a[i][k]*b[k][j];

北京冰林业丧大学犁信息泻学院*例2:fo验r(踩i=企1;南i狮<=候n;佛i蛇++包)fo芦r(j陪=1宽;块j<嚷=i逗;乏j+蓬+)fo壤r(k端=1浸;巩k<荡=j勤;立k+行+)x=第x+掀1;语句尖频度=北京抹林业邪大学退信息岁学院*例3:分夏析以搅下程安序段钳的时耻间复央杂度i=努1;伸①wh语il杆e(篇i<库=n鼠)i=铲i*能2;汪②即f(兼n)肥≤l哗og2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论