什么是数据?
是信息的载体,在计算机科学中是指所有能输入到计算机中并能被计算机程序识别和处理的符号的集合。
数据元素是数据的基本单位。构成数据元素的不可分割的最小单位为数据项,比如在一个学生信息表中,每个学生就是一个数据项
什么是数据结构?
简单来说就是数据和数据之间的关系 是一组存在一定关系的元素的集合以及对元素的操作 也是ADT(抽象数据类型)的物理实现。
数据结构主要分为两类:
按照数据结构成员之间的关系不同可分为线性结构(栈,队列等)和非线性结构(树,图等)
——————————————————————————————
按照考虑问题的角度不同分为
- 存储结构(又叫物理结构):
①顺序存储结构:用一组连续的存储单元一次存储数据元素,元素之间的逻辑关系由元素的存储位置来表示
②链式存储结构:用一组任意的存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示。
···································································································- 逻辑结构:
①集合结构:集合结构中的数据元素同属于一个集合,他们之间是并列关系,除此没有其他关系。
②线性结构:线性结构中元素存在一对一的相互关系。
③树形结构:树形结构中元素存在一对多的相互关系。
④图形结构:图形结构中元素存在多对多的相互关系。
什么是算法?
是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。简单来讲就是解决一个问题的思路
算法的特性?
一个有限的指令集
- 输入(给一定的数据应用,可以没有)
- 输出(必须有输出)
- 有穷性(在有限时间内执行,不能无限执行)
- 确定性(输入一个数,执行结果对应一个)有明确的目标,不可以有歧义
- 可行性(能解决问题),在计算机能处理的范围之内
算法的基本要求?
正确性,可读性,健壮性(减少bug),时间复杂度(算法占用的时间),空间复杂度(运行时占用的内存)。
衡量算法
空间复杂度
时间复杂度