大话数据结构1、2章

第一章

第1章 数据结构绪论
程序设计=数据结构+算法
数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。
数据元素:是组成数据的、有一定意义的基本单元,在计算机中通常作为整体处理,也称为记录
数据项:一个数据元素可以由若干个数据项组成,是数据不可分割的最小单位
数据对象:是性质相同(同数量类型的数据项)的数据元素的集合,是数据的子集
数据结构:是相互之间存在一种或多种特定关系的数据元素的集合
逻辑结构:是指数据对象中数据元素之间的相互关系。集合结构、线性结构、树形结构、图形结构
物理结构:是指数据的逻辑结构在计算机中的存储形式。顺序存储结构、链式存储结构
数据类型:是指一组性质相同的值的集合及定义再此集合上的一些操作的总称
抽象数据类型(Abstract Data Type, ADT):是指一个数学模型及定义在该模型上的一组操作 

第二章 算法

算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作
算法的特性:输入输出(输入>=0个,输出>=1个);有穷性;确定性;可行性
算法的设计要求:正确性、可读性、健壮性
算法的效率度量:事后统计、事前估算
算法的时间复杂度定义:进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级,算法的时间复杂度,也就是算法的时间量度,计作T(n)=O(f(n))T(n)=O(f(n))。它表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂度。其中f(n)是问题规模n的某个函数。
推导大O阶的方法:用1替换加法;只保留最高阶项;最高阶项系数为1
O(1)<O(logn)<O(n)<O(nlogn)<O(n2)<O(n3)<O(2n)<O(n!)<O(nn)
 

猜你喜欢

转载自blog.csdn.net/m0_37934678/article/details/87868183