1.1基本概念和术语
数据:客观事物的符号表示。(能输入到计算机的、并能被计算机处理的所有符号)
数据元素:数据的基本单位。(能完整的描述一个对象,比如一条记录)
数据项:组成数据元素的、有独立含义的、不可分割的最小单位(可以是一条记录的某个属性项,比如学生表中的姓名、年龄等)
数据对象:相同性质的数据元素的集合,是数据的子集。(各类记录组成的某张表)
数据结构:数据元素之间存在某一种关系,或者多种关系,然后把这些数据元素的集合称为数据结构,包含逻辑结构(形容关系的),存储结构(计算机中怎么保存的)
逻辑结构(集合、线性、树型、图型)
存储结构(顺序、链式)
数据类型:一个值的集合与定义在这个值集上的一组操作的总称(整型、字符型、实型、结构体、数组、指针等)
抽象数据类型:用户定义的,表达应用问题的数学模型,以及定义在这个模型上的操作的总称(线性表、栈、队列等)
1.2算法和算法分析
算法:解决某一个问题的有限长度的操作序列
性质:有穷(无穷的话叫死循环)、确定(结果都不确定,解决锤子问题)、可行(不解决问题,我写这个算法来干啥)、输入(0个或者多个)、输出(1个或者多个,如果没有输出,那就没有结果咯)
时间复杂度和空间复杂度:
鄙人个人认为就是:简略看作代码里的循环几次,和开辟几次空间。太过专业的术语,自己看书。(解释比较糙,也很俗)
但是这部分内容,在查找那一章使用较多,或者比较两个相同的算法谁更好的时候用的比较多。实在不行就暴力解法。