- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
福 州 理 工 学 院
教 案
课 程 名 称 数据结构与算法设计
系 (部) 信息工程系
教 研 室 计算机
授 课 教 师 黄取治
职 称 讲师
1
附件 2:
教 案(首页)
总计 : 学时 课程名称 数据结构与算法设计 学 分
讲授: 学时 □公共课□ 公共选修课 □专业基础课□专业必修课□专业方向选修
上机: 学时 类 别 课□实验实训课(仅限本科)
实验/ 训: 学时 (请打√) □ 公共课 □ 公共选修课 □ 专业基础课 □ 专业必修课 □ 专业选修课 □
其它: 学时 实验实训课 (仅限高职)
授 课 对 象
(请打√)
□本科 □高职 □其他
(注明书名、主编、出版社、出版时间)
使用教材
参考资料
教 学 方 法
教学手段
考核方式
学生创新
精神与实
践能力的
培养方法
2
数据结构与算法设计 课程教案(续页)
授课时间 第 1 周
授课方式
(请打√)
□讲授 □上机 □实验 / 训 □其它
课时
安排
授课题目(章节或单位课时) :
第一章 绪论
教学目的与要求(分了解、熟悉、掌握三个层次) :
1.了解数据结构课程的重要性和课程的基本要求,以及本课程涵盖的内容;
2. 掌握数据结构的基本概念;
3. 理解算法描述和简单的算法分析。
教学重点与难点:
1. 重点是数据结构的基本概念
2. 难点是时间复杂度分析
教 学 内 容 备 注
1. 从后序课(数据库、操作系统、编译原理、人工智能)的需要和考研两方面
介绍数据结构课程的重要性。
2. 通过三个例子讲解数据结构研究的内容。
3. 介绍基本概念:数据的三个层次,数据结构的三个要素,数据结构的分类,
四种存储结构,抽象数据类型,算法,算法的五个特性,对算法设计的要求,算法
描述和算法分析,时间复杂度和空间复杂度。
4. 从“百钱买百鸡 ”(“一百元钱买一百支笔 ”)的算法例子说明选择算法的重要性:
方案 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-,ij-, j)1;00
方案 1 内层循环超过 100 万次,在某机器上运行了 50 分钟;方案 2 的 if 语句
执行 525 次,运行了 2 秒钟,相差 1500 倍。
5. 算法分析举例
(1)常量阶: 时间复杂度为 O(1)
++x;
s=0;
语句频度 为 1, 时间复杂度为 O(1)。
3
for(j=1;j=10000;++j)
{++x; s+=x;}
语句频度为 10000,时间复杂度为 O(1) 。
(2)对数阶: 时间复杂度为 O(logn)
s=0;
for(j=1; j=n; j*=2)
s++;
语句频度为 logn,所以时间复杂度为 O(logn)。
(3)线性阶: 时间复杂度为 O(logn)
S=0;
for(j=1;j=n;++j)
s++;
语句频度为 n,所以时间复杂度为 O(n) 。
(4)时间复杂度为 O(nlogn)
s=0;
for(j=1;j=n;j*=2)
for(k=1;k=n;++k)
s++;
时间复杂度为 O(nlogn)
(5)平方阶: 时间复杂度为 O(logn)
s=0;
for(j=1;j=n;++j)
for(k=1;k=n;++k)
s++;
语句频度为 n
2,所以时间复杂度为 O(n2)。
s=0;
for(j=1; j=n; j++)
for(k=1;k=j;++k)
s++;
语句频度为 n(n+1)/2 ,所以时间复杂度仍为 O(n
2)。
(6)立方阶: 时间复杂度为 O( n
3)
例:矩阵乘法: n x n
for( i = 0; i n; i++) //(n+1)
for( j = 0; j n; j++) //n(n+1)
2
{ c[i][j] = 0 ; //n
2
for( k= 0; k n; j++) // n
(n+1)
3
c[i][j] = c[i][j]+a[i][k]* b[k][j]; // n
}
4
说明:各语句行后的数字是该语句重复执行的次数 ;
本算法时间复杂度为 O (n
3)
6. 空间复杂度
算法原地(就地)工作:
若所用额外存储空间相对于输入数据量来说是常数, 则称此算法为原地 (就地)
工作。
5
您可能关注的文档
最近下载
- 辽宁省养老保险查询方法.pdf VIP
- 急性心肌梗死病人的护理课件.pptx VIP
- 2025至2030全球及中国汽车连接器行业市场占有率及投资前景评估规划报告.docx VIP
- 人教版(2024)一年级音乐上册第五单元《伸缩的节奏》教学课件.pptx VIP
- 高标准农田电力工程施工方案.docx
- 慢性阻塞性肺疾病教学查房--课件.ppt VIP
- 孔融让梨绘本故事ppt课件(图文).pptx VIP
- QC-T 656-2023汽车空调用空气调节装置总成.pdf VIP
- 国开《小学语文教学研究-0035》期末机考学习资料.docx VIP
- (完整word版)安全生产责任制考核表.docx VIP
文档评论(0)