- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
NCRE公共基础知识教案(第章).doc
【教学课题】
算法
(第1章 数据结构,第1节)
【目的要求】
掌握算法的?概念,算法的特点?,理解算法时?间复杂度和?空间复杂度?的含义,掌握时间复?杂度的计算?方法。
【教学重点】
算法的概念?,算法特点,时间复杂度?的概念和计?算
【教学难点】
时间复杂度?的概念和计?算
【方法与手段?】
讲授+多媒体演示?
【作业布置】
1、什么是算法?,算法的特征?有哪些?
2、算法的基本?要素有哪些??
3、什么是算法?的时间复杂?度和空间复?杂度?
第1章 数据结构和?算法
1.1 算法
一、算法(Algor?ithm)(P1)
1、基本概念
解题方案准?确而完整的?描述(为解决某个?问题而采取?的方法和步?骤)。
(不受机器、程序设计语?言、编程者等因?素的限制,不等于程序?,但程序可以?看作是算法?的一种描述?,程序=算法+数据,更具体说:程序=算法+数据结构+程序设计方?法+语言和环境?)
2、基本特征
(1)可行性
(算法中每个?步骤必须有?效可行,如a/b,其中b不能?为零)
(2)确定性
算法中每个?步骤都有明?确的意义,不允许模棱?两可,不允许歧义?。
(3)有穷性(避免进入无?限循环)
算法中的操?作必须在有?限时间内完?成。如:循环必须有?终止条件。
(4)拥有足够的?情报
(算法中运算?对象必须有?初值,可以输入,也可直接赋?值,必须输出)
3、算法基本要?素(P2)
(1)对数据的运?算和操作
基本的运算?有:
算术运算(加、减、乘、除等)、逻辑运算(与、或、非等)、关系运算(大于、小于、等于、不等于等)、数据传输(赋值、输入、输出等)
(2)算法的控制?结构
算法中各操?作之间的执?行顺序(顺序结构、选择结构、循环结构)
4、算法设计基?本方法(P3)
(1)列举法
根据问题,列举所有可?能情况。如:从一个地方?到达另一个?地方的途径?。
(2)归纳法
根据少量情?况,分析归纳,得出一般关?系。如:找出数列中?的通项式。
(3)递推法
从已知初始?条件出发,逐步推出所?有中间结构?和最后结果?。如:案件侦破中?根据以有线?索进行的推?理。本质上是归?纳。
(4)递归法
将复杂的问?题一层层进?行分解,最后归结为?一些简单的?问题,然后将简单?的问题解决?,再沿着分解?的逆过程逐?步进行综合?,将最初的问?题解决。如:
求n!,可用n!=n*(n-1)!递归调用来?实现。
递归法分为?直接递归和?间接递归。
递归的基础?也是归纳。
(5)减半递推技?术
又叫分治法?,重复将问题?的规模减半?。如:
设方程f(x)=0在区间[a,b]上的实根,且f(a)与f(b)异号,利用二分法?求方程在[a,b]上的根。
减半递推法?也是归纳法?的一个分支?。
(6)回溯法
也叫试探法?,基本思想是?:从一条路往?前走,能进则进,不能进则退?回来,换一条路再?试。…,an组成的?一个有限序?列,表中的每个?数据元素,除了第一个?,有且只有一?个前件,除了最后一?个,有且只有一?个后件。
2、常见的线性?表
一维数组,矩阵(二维数组),数据库表等?
(线性表中的?数据元素可?以是一个单?一的数据,也可以若干?数据的组合?,如数据库表?中的记录)
3、线性表的表?示(集合)
(a1,a2,a3,…,ai,…,an)
其中:ai就是相?应的数据元?素(结点)
(线性表也可?以是一个空?表)
4、线性表的特?点
是一种线性?结构,元素在表中?的位置由其?序号决定,元素之间的?相对位置是?线性的。对于非空的?线性表,具有如下特?点:
(1)有且只有一?个根结点;
(2)有且只有一?个终端结点?;
(3)内部结点有?且只有一个?前件,有且只有一?个后件。
线性表中结?点的个数n?称为线性表?的长度。结点个数为?0的线性表?,称为空表。
二、线性表的顺?序存储结构?(P16)
1、线性表通常?采用顺序存?储的方法来?存储各个元?素。(这种方法又?叫顺序分配?)
2、顺序存储的?特点
(1)所有元素所?占的存储空?间是连续的?;
(2)在存储空间?中各元素是?按逻辑顺序?依次存放。
(线性表中的?前后件两个?元素在存储?空间中是紧?邻的,并且前件一?定在后件的?前面)
3、举例
例如一维、二维数组的?内存表示。
4、线性表存储?结构下的基?本运算
(1)在指定位置?插入一个元?素
(2)删除线性表?中的指定元?素
(3)查找某个或?某些特定的?元素
(4)线性表的排?序
(5)按要求将一?个线性表拆?分为多个线?性表
(6)将多个线性?表合并为一?个线性表
(7)复制线性表?
(8)逆转一个线?性表
三、插入运算(P17)
1、例1.9 图1.7(a)为一个长度?为8的线性?表顺序存储?在长度为1?0的存储空?间中。现要求在第?2个元素
原创力文档


文档评论(0)