- 1、本文档共97页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
湖南涉外经济学院
教案
学 院信息科学与工程学院
系/教研室 软件工程系
课程名称 数据结构
主讲教师 邹竞
湖南涉外经济学院
讲授章节 第 从后序课(数据库、操作系统、编译原理、人工智能)的需要和考研两方面介绍数 据结构课程的重要性。 通过三个例子讲解数据结构研究的内容。 介绍基本概念:数据的三个层次,数据结构的三个要素,数据结构的分类,四种存储结构,抽象数据类型,算法,算法的五个特性,对算法设计的要求,算法描述和算法分析, 时间复杂度和空间复杂度。
从后序课(数据库、操作系统、编译原理、人工智能)的需要和考研两方面介绍数 据结构课程的重要性。
通过三个例子讲解数据结构研究的内容。
介绍基本概念:数据的三个层次,数据结构的三个要素,数据结构的分类,四种存
储结构,抽象数据类型,算法,算法的五个特性,对算法设计的要求,算法描述和算法分析, 时间复杂度和空间复杂度。
从百钱买百鸡”(一百元钱买一百支笔”的算法例子说明选择算法的重要性:
方案 1 :
for( i = 0; i =100; i++)
for( j = 0; j =100; j++)
for( k= 0; k =100; k++)
if(i+j+k==100 3*i+2*j+0.5*k==100) printf( “ i=%dj=%d, k=%d ,i,j,k)
万案2:
for( i = 0; i =20; i++)
for( j = 0; j =34 -i; j++) if(3*i+2*j+(100 -i-j) *0.5==100) printf( “ i=%d,j=%d,k=%d ” ,i-j- j)P0
方案1内层循环超过100万次,在某机器上运行了 50分钟;方案2的if语句执行525
次,运行了 2秒钟,相差1500倍。
算法分析举例
常量阶:时间复杂度为 O(1)
++x;
s=0;
语句频度为1,时间复杂度为 0(1)。
for(j=1;j=10000;++j) {++x; s+=x;}
语句频度为10000 ,时间复杂度为 O(1)。
对数阶:时间复杂度为 O(log n)
s=0;
for(j=1; j=n; j*=2)
授课时数 2
教学目的:
了解数据结构课程的重要性和课程的基本要求,以及本课程涵盖的内容;
掌握数据结构的基本概念;
理解算法描述和简单的算法分析。
教学内容(讲授提纲)
S++;
语句频度为logn,所以时间复杂度为 O(logn)。
线性阶:时间复杂度为 O(log n)
S=0;
for (j=1;j=n;++j)
s++;
语句频度为n,所以时间复杂度为 0(n)。
时间复杂度为0(nlogn)
s=0;
for(j=1;j=n;j*=2)
for(k=1;k=n;++k)
s++;
时间复杂度为O(nlogn)
平方阶:时间复杂度为 O(log n)
s=0;
for (j=1;j=n;++j)
for (k=1;k=n;++k)
s++;
语句频度为n2,所以时间复杂度为 0(n2)。
s=0;
for (j=1; j=n; j++)
for (k=1;k=j;++k)
s++;
语句频度为n(n+1)/2,所以时间复杂度仍为 0(n2)。
立方阶:时间复杂度为 0( n 3)
例:矩阵乘法:n x n
for( i = 0; i n; i++) 〃(n+1)
for( j = 0; j n; j++) 〃n(n +1)
TOC \o 1-5 \h \z { c[i][j] = 0 ; 〃n2
for( k= 0; k n; j++) // n2 (n+1)
c[i][j] = c[i][j]+a[i][k]* b[k][j]; // n3
}
说明:各语句行后的数字是该语句重复执行的次数 ;
本算法时间复杂度为 0 (n3)
空间复杂度
算法原地(就地)工作:
若所用额外存储空间相对于输入数据量来说是常数,则称此算法为原地(就地)工作。
本章节的教学重点、难点:
重点是数据结构的基本概念
难点是时间复杂度分析
教学方法、教学手段:
介绍到算法概念(45分钟)
算法分析和举例(45分钟) 使用教具:计算机和投影仪
作业、讨论题、思考题:
编写最优算法,从小到大依次输出顺序读入的三个整数。 要求:
最佳情况:比较2次,无移动; 最差情况:比较3次,7次移动
参考资料:
陈守孔等著 《算法与数据结构C语言版》机械工业出版社 2007
陈守孔等著 《算法与数据结构考研试题精析》 机械工业出版社 2008
3?严蔚敏等著 《数据结构C语言版》 清华大学出版社 2005
D.E.Knuth著 《计算机程序设计技巧》第一、三卷 管纪文译 国防出版社
讲授章节第2讲线性表一一顺序表授课
1亿VIP精品文档
相关文档
最近下载
- (新课标)新统编高教版中职历史基础模块“中国历史”第13课《清朝前中期的鼎盛与危机》说课稿.doc
- 危重患者的肠内营养护理考核试题及答案.pdf VIP
- 中国古代文学作品选(一).ppt VIP
- 《高举队旗跟党走》主题队会教案.ppt VIP
- 2024年党纪学习教育专题研讨发言材料范文5篇.docx VIP
- 英文介绍长城 The Great Wall.ppt
- 骨化三醇生产工艺及市场研究报告(硕询化工网).doc
- (移动)信息通信行业服务大赛考试题库资料大全-4简答题汇总.pdf
- 人教版数学八下19.3《课题学习选择方案》授课教案设计.pdf VIP
- 2022年云南省社区(村)基层治理专干招聘考试真题.docx VIP
文档评论(0)