- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
公共基础要点L
考纲基本要求
1.掌握算法的基本概念。
2.掌握基本数据结构及其操作。
3.掌握基本排序和查找算法。
4.掌握逐步求精的结构化程序设计方法。
5.掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。
6.掌握数据库的基本知识,了解关系数据库的设计。
1 基本数据结构与算法
考试内容
1.算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。
2.数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。
3.线性表的定义;线性表的顺序存储结构及其插入与删除运算。
4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。
5.线性单链表、双向链表与循环链表的结构及其基本运算。
6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。
7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。
1.1算法
算法的概念:解题方案的准确、完整描述。
算法是特定问题求解方法与步骤的描述,是指令的有限序列,其中每条指令表示一或多个操作。算法不等于程序,程序编制不可能优于算法设计。
算法的基本特征:①可行性;②确定性;③有穷性;④拥有足够的情报。
①可行性:算法中描述的操作都必须可以通过已实现的基本运算执行有限次实现。
②确定性:算法中每条指令都必须含义确切,无歧义。对相同的输入只能得出相同的输出。
③有穷性:一个算法必须能在执行有穷步之后结束,且每一步都可在有穷时间内完成。
④拥有足够的情报(输入):一个算法有零或多个输入。
⑤输出:无输出的算法没有意义。
算法的基本要素:①数据运算和操作;②算法的控制结构。
基本运算和操作:算术运算、逻辑运算、关系运算、数据传输。
基本控制结构:顺序、选择、循环结构。
算法基本设计方法:列举、归纳、递推、递归、分治(减斗递推)、回溯法。
算法复杂度:包括时间复杂度和空间复杂度。
时间复杂度:执行算法所需的计算工作量。
空间复杂度:执行算法所需的内存空间。
常见时间复杂度: 常量阶O⑴,对数阶O(log N),线性阶O(N),平方阶O(N^2),指数阶O(2^N)
(a) { ++x;s=x; } // O ⑴
(b) for (i=1;i=N;++i) {++x;s+=x;} // O(N)
(c) for (j=1;j=N;++i)
for (k=1;k=N;++k) {++x;s+=x;} // O(N 2)
时间复杂度的计算:①找出基本运算;②计算基本运算的执行频数;③提取最高阶的执行频数。
算法工作量的分析方法:①平均性态(各种特定输入下基本运算执行次数的加权平均值);②最坏情况复杂性(规模为N时基本运算的最大执行次数)。
算法复杂度的意义:算法复杂度描述算法执行时的时空开销与问题规模之间的关系,设计时应尽量选择复杂度低的算法,以节省时空开销。
1.2 数据结构的基本概念
1.2.1 数据结构的定义与研究内容
数据(是客观事物的符号表示,在计算机科学中指所有能被计算机程序处理的符号的总称。
数据元素(元素、记录)是基本数据单位,常作为一个整体处理。一个数据元素由若干数据项组成,数据项是不可分割的最小数据单位。
数据对象是性质相同的数据元素的集合,
数据结构指相互有关联的数据元素的集合。
研究的三个方面:逻辑结构,存储结构,运算。
⑴逻辑结构(B):数据元素(D)及其之间的逻辑关系(R)。即: B=(D,R)
逻辑结构分为线性结构与非线性结构2大类。
线性结构:满足2条件:①有且只有1个根结点;②每个结点最多有1个前件,最多有1个后件。
非线性结构:不满足线性结构条件的数据结构。
4种基本逻辑结构:集合、线性结构、树结构、图结构(网状结构)。
⑵存储结构:数据元素在计算机中的存储关系(存储方式)。包括顺序、链接、索引等。
存储结构中要存放数据元素及其关系的信息。存储元素及其关系所占用的空间称为结点。
一种逻辑结构一般可用多种存储结构,不同存储结构的数据处理效率不同。
⑶数据运算:对数据结构进行的运算(操作)。
数据结构的图形表示:图1-1。无前件(前驱)的结点称根结点;无后件(后继)的结点称终端结点(叶子结点);其它称内部结点(中间结点)。
1.2.2 顺序存储与链式存储
顺序存储的存储空间连续,元素按逻辑关系依次存放。
链式存储的结点包括数据域(存储元素值)和指针域(存放指针,指示前趋/后继结点)。存储空间可连续或不连续,结点的存储顺序与元素的逻辑关系无关。结点空间可方便地动态申请和释放。可方便地表示线性或非线性结构。
顺序存储的特点:①借助元素在存储空间的相对位置表示逻辑关系(逻辑相邻的元素存储位置也相邻);②元素查找方便,插删繁琐(随机存取
文档评论(0)