数据结构知识点概括

来源:互联网 发布:知乎 不氪金的手游 编辑:程序博客网 时间:2024/05/16 08:49

一、 基本概念

1、数据元素是数据的基本单位。

2、数据项是数据不可分割的最小单位。

3、数据结构的

逻辑结构(抽象的,与实现无关)

物理结构(存储结构)  顺序映像(顺序存储结构)位置“相邻”

   非顺序映像(链式存储结构)指针表示关系

4、算法特性:算法具有正确性、有穷性,确定性,(可行性)、输入,输出

正确性:能按设计要求解决具体问题,并得到正确的结果。

有穷性:任何一条指令都只能执行有限次,即算法必须在执行有限步后结束。

确定性:算法中每条指令的含义必须明确,不允许由二义性

可行性:算法中待执行的操作都十分基本,算法应该在有限时间内执行完毕。

输入:一个算法的输入可以包含零个或多个数据。

输出:算法有一个或多个输出

5、算法设计的要求:

(1)正  确 性:算法应能满足设定的功能和要求 。

   (2)可  读 性:思路清晰、层次分明、易读易懂 。

   (3)健  壮 性:输入非法数据时应能作适当的反应和处理。

   (4)高  效 性(时间复杂度):解决问题时间越短,算法的效率就越高。  

   (5)低存储量(空间复杂度):完成同一功能,占用存储空间应尽可能少。


内容概要:

基本概念——线性表——栈与队列——树与二叉树——图——查找算法——排序算法

 

一、数据结构绪论

  • 数据结构的基本概念

  1. 数据结构是一门研究非数值计算的程序设计问题中,计算机的操作对象以及它们之间的关系和操作的学科。
  2. 数据元素是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
  3. 数据结构包含三个方面的含义:                                                                      

  4. 逻辑结构:                                                                                                    

  5. 物理结构:数据的逻辑结构在计算机中的表示,称此为物理结构,或称存储结构。                                                                                                    

     

  6. 数据类型:一个值的集合以及定义在这个值集上的一组操作的总称。

  7. 抽象数据类型:通常由用户定义,用以表示应用问题的数据模型以及定义在该模型上的一组操作。                                                                                                     

  8. 算法是描述计算机解决给定问题的操作过程,即为决解某一特定问题而由若干条指令组成的有穷序列。

  • 算法的效率分析:http://univasity.iteye.com/blog/1164707 

  1. 事后统计法:收集该算法实际的执行时间和实际占用空间的统计资料。
  2. 事前分析估算法:在算法运行之前分析该算法的时间复杂度和空间复杂度,来判断算法的效率。
  3. 时间复杂度分析:                                                                                            



  4. 常见函数的时间复杂度按数量递增排列及增长率: