- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机二级公共基础知识整理第一章数据结构与算法8 A2 H5 ~+ {??t. z7 k1.1 算法算法:是指解题方案的准确而完整的描述。算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的特征包括:! X! p* G! t7 @$ m5 d7 f# P: K(1)可行性;/ ^/ B0 e: Q$ x) r R(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;( a% k( z. K- }: ~/ S4 n/ v2 A(3)有穷性,算法必须能在有限的时间内做完,包括合理的执行时间的含义;8 L v$ W3 X# T; ~ y(4)拥有足够的情报。- g, V H0 ^3 N( N9 q# I算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。% {8 I1 h; k4 | d1 `指令系统:一个计算机系统能执行的所有指令的集合。基本运算包括:算术运算、逻辑运算、关系运算、数据传输。. U% K: }$ ], n1 U算法的控制结构:顺序结构、选择结构、循环结构。算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。* O, f ? s* P* b算法复杂度:算法时间复杂度和算法空间复杂度。两个之间没有联系的。$ {7 W0 q4 q: J D算法时间复杂度是指执行算法所需要的计算工作量。# ~5 g9 a [) D- f算法空间复杂度是指执行这个算法所需要的内存空间。. Q* S5 _ o3 _/ Z8 S1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构; U v7 }4 u7 l(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;) t/ `) E4 N9 f(3)对各种数据结构进行的运算。数据结构是指相互有关联的数据元素的集合。数据的存储结构有顺序、链接、索引等。线性结构条件: J0 N??_( g! u(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。1 K D* ~ X: l0 Y, F% j非线性结构:不满足线性结构条件的数据结构。. m# ]( j# X??b! L, q6 I3 [1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是??C* l+ P( f) z! X, U. I. _- G线性的。3 i) O3 T w) N6 L在复杂线性表中,由若干项数据元素组成的数据元素称为记录,( _ G- U/ }: n1 Z而由多个记录构成的线性表又称为文件。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。3 F$ h% `7 H$ h: `+ P1.4 栈和队列; h* P8 |4 q5 B; W: \9 T r3 g) r; u栈是限定在一端进行插入与删除的线性表。1、先进后出FILO;+ C9 Z- `7 \! I) a9 ^# D1、支持子程序调用;6 K9 U) t) u S$ O( {2 W+ Z2、具有记忆功能;3、可以不用顺序存放数据;) C2 a; @! t7 Y4、只能够在top 首部进行操作,bottom 是绝对不动的;5、栈的存放数据的个数为num = (bottom – top)+1;队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。) Q5 r5 { a M M q+ d??B# p1、Rear 指针指向队尾,front 指针指向队头。3、先进先出FIFO,或者是后进后出LILO* m M, A$ U* G- s4 Q2、循环队列里面的个数计算方法:A、rear front 的时候, num = rear – front;; c! s7 _) X2 p7 b( q; }??P: BB、rear front 的时候, num = rear + n – front;; g( b( n5 W- X$ f H4 f3 V( a1.5 线性链表数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。结点由两部分组成:(1)用于存储数据元素值,称为数据域;(2)用于存放指针,称为指针域,. n3 ?1 |7 u; }8 f4 C R O$ W在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确
文档评论(0)