1,数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及它们之间的关
系和操作等相关问题的学科。简单来讲,数据结构就是关系,就是数据元素相互之
间存在的一种或者多种特定关系的集合。
2,数据结构分为逻辑结构和物理结构。
3, 四大逻辑结构:集合结构 线性结构 树形结构 图形结构
4, 物理结构:硬盘等通常使用文件结构来描述。
内存则分成两种-----顺序存储结构和链式存储结构
5,算法: 是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且
每条指令表示一个或多个操作。
6,算法的五个基本特征:输入 输出 有穷性 确定性和可行性
输入---0或多个
输出---1或多个
有穷性--执行有限步骤后自动结束
确定性--每个步骤都有确定的含义
可行性--每步必须可行,即每步都能通过执行有限次数完成
7,算法设计的要求:正确性,可读性,健壮性,时间效率高和存储量低
8,算法时间复杂度的定义:在进行算法分析时,语句总的执行次数T(n)是关于问题规
模的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,
也就是算法的时间量度,记作:T(n)=O(f(n)),它表示随问题规模n的增大,算法执行
时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂
度。其中f(n)是问题规模n的某个函数。(可以理解为:执行次数==时间)
9,常用的时间复杂度排序:O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)
<O(n!)<O(n^n)