小甲鱼数据结构01之谈谈算法

来源:互联网 发布:照片淘宝手机搜索 编辑:程序博客网 时间:2024/04/27 14:18


 

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)

 

 

0 0