计算机二级 公共基础知识 数据结构与算法

计算机二级 公共基础知识 数据结构与算法

ID:42755086

大小:111.00 KB

页数:18页

时间:2019-09-20

计算机二级 公共基础知识 数据结构与算法_第1页
计算机二级 公共基础知识 数据结构与算法_第2页
计算机二级 公共基础知识 数据结构与算法_第3页
计算机二级 公共基础知识 数据结构与算法_第4页
计算机二级 公共基础知识 数据结构与算法_第5页
资源描述:

《计算机二级 公共基础知识 数据结构与算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第一章数据结构与算法  1.1算法  1、算法的基本特征(1)可行性。  (2)确定性。  (3)有穷性。  (4)拥有足够的情报。  *:综上所述,所谓算法,是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。  2、算法复杂度主要包括时间复杂度和空间复杂度。  (1)算法时间复杂度:指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行次数来度量。(2)算法空间复杂度:指执行这个算法所需要的内存空间。1.2数据结构的基本概念  1、数据结构是指相互有关联的数据元素的集合

2、。  2、数据结构主:(1)数据的逻辑结构:是指反映数据元素之间的逻辑关系的数据结构。数据的逻辑结构有两个要素:数据元素的集合,记作D,数据之间的前后件关系,记作R,则数据结构B=(D,R)(2)数据的存储结构:在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构)。常用的存储结构有顺序、链接等存储结构。顺序存储方式主要用于线性的数据结构,它把逻辑上相邻的数据元素存储在物理上相邻的存储单元里,结点之间的关系由存储单元的邻接关系来体现。链式存储结构就是在每个结点中至少包含一个指针域,用指针来体现数据元素之间逻辑上的联系。 

3、 3、数据结构的图形表示  在结构图中,没有前件的结点称为根结点,没有后件的结点称为终端结点,也称叶子结点。  4、数据结构分为两大类型:线性结构和非线性结构。  (1)线性结构(非空的数据结构)条件:1)有且只有一个根结点;2)每一个结点最多有一个前件,也最多有一个后件。  *:常见的线性结构有线性表、栈、队列和线性链表等。  (2)非线性结构:不满足线性结构条件的数据结构。  *:常见的非线性结构有树、二叉树和图等。1.3线性表及其顺序存储结构  1、线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是

4、线性的。线性表是由n(n≥0)个数据元素组成的一个有限序列,表中的每一个数据元素,除了第一个外,有且只有一个前件,除了最后一个外,有且只有一个后件。线性表中数据元素的个数称为线性表的长度。线性表可以为空表。  *:线性表是一种存储结构,它的存储方式:顺序和链式。  2、线性表的顺序存储结构具有两个基本特点:(1)线性表中所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。  *:由此可以看出,在线性表的顺序存储结构中,其前后件两个元素在存储空间中是紧邻的,且前件元素一定存储在后件元素的前面,可以

5、通过计算机直接确定第i个结点的存储地址。  3、顺序表的插入、删除运算  (1)顺序表的插入运算:在一般情况下,要在第i(1≤i≤n)个元素之前插入一个新元素时,首先要从最后一个(即第n个)元素开始,直到第i个元素之间共n-i+1个元素依次向后移动一个位置,移动结束后,第i个位置就被空出,然后将新元素插入到第i项。插入结束后,线性表的长度就增加了1。  *:顺性表的插入运算时需要移动元素,在等概率情况下,平均需要移动n/2个元素。  (2)顺序表的删除运算:在一般情况下,要删除第i(1≤i≤n)个元素时,则要从第i+1个元素开始,直到

6、第n个元素之间共n-i个元素依次向前移动一个位置。删除结束后,线性表的长度就减小了1。  *:进行顺性表的删除运算时也需要移动元素,在等概率情况下,平均需要移动(n-1)/2个元素。插入、删除运算不方便。1.4栈和队列1、栈及其基本运算  栈是限定在一端进行插入与删除运算的线性表。  在栈中,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。栈顶元素总是最后被插入的元素,栈底元素总是最先被插入的元素。即栈是按照“先进后出”或“后进先出”的原则组织数据的。  2、队列及其基本运算  队列是指允许在一端(队尾)进入插入,而在

7、另一端(队头)进行删除的线性表。尾指针(Rear)指向队尾元素,头指针(front)指向排头元素的前一个位置(队头)。  队列是“先进先出”或“后进后出”的线性表。  队列运算包括:1)入队运算:从队尾插入一个元素;2)退队运算:从队头删除一个元素。  循环队列及其运算:所谓循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用。在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置,因此,从头指针front指向的后一个位置直到队尾指针rear指向的位

8、置之间,所有的元素均为队列中的元素。  *:循环队列中元素的个数=rear-front。1.5线性链表  线表顺序存储的缺点:(1)插入或删除的运算效率很低。在顺序存储的线性表中,插入或删除数据元素时需要移动大量的数据元

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。