∞本章是经过资源的导入解析了
1.1数据结构的基本概念
1.2算法和算法分析
1.3算法描述与C语言数据类型
================================We will Start==========================================
1.1数据结构的基本概念
定义:数据结构是一门研究非数值计算的程序设计问题中计算机粗啊哦作对象及他们之间的关系和操做的学科
1.1.2 :数词概念
1.数据(data):数据是指可以输入到计算机中,并被计算机识别和处理的符号的集合
2.数据元素(data element):数据元素时数据的基本单位.在计算机中,数据元素一般做为一个总体来处理.一个数据
元素能够由若干个数据项组成.数据项是具备独立意义的最小数据单位,是对数据元素属性的描述
3.数据对象(data object):数据对象是具备相同性质的数据元素的集合,是数据的一个子集.
eg:整数集合:N={0,±1,±2,...}无限集
字符集合:c={'A','B',....,'Z'}有限集
4.逻辑结构(logic structure):描述的是数据元素之间的
(1)线性结构:数据元素之间存在一对一的关系
(2)树型结构:数据元素之间存在一对多的关系
(3)图结构或网结构:结构中的数据元素之间存在多对多的关系算法
注:数学的方法给出数据的逻辑结构的定义,数据结构可由一个二元组(D,S)定义,
其中D是数据元素的有限集,S是D中元素的关系的有限集。
5.存储结构(storage structure):存储数据又叫物理结构,是数据结构在计算机中的表示
顺序存储结构
链式存储结构
总结:
数据结构的内容
可概括为三个部分逻辑结构、存储结构和运算集合
==========================================================================
1.2算法和算法分析
1.2.1算法(Algorithm)
(1):有穷性:一个算法包括的指令数必须有限,每一条指令的执行次数也必须有限
(2):肯定性:算法的每一条指令必须有确切的定义,无二性
(3):可行性:算法中的每一条指令均可以经过有限次、可实现的基本运算且在有限的时间内实现
(4):输入:一个算法具备零个或多个输入
(5):输出:一个算法具备一个或多个输出
设计好的算法应考虑:1.正确性2.可读性3.健壮性4.高效性和低存储量
1.2.2算法分析
有两种衡量算法效率的方法
(1)过后统计法
(2)事前分析估算法
1.算法的时间复杂度
:算法中的基本操做执行的次数是问题规模n的某个函数f(n),算法的时间量度记做:数组