数据结构与算法 基本概念

来源:互联网 发布:小黑屋写作软件 编辑:程序博客网 时间:2024/06/03 13:23

数据结构的一些基本概念:
数据: 是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。
数据元素:是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。
数据对象:是性质相同的数据元素的集合,是数据的一个子集。

数据结构:是相互之间存在一种或多种特定关系的数据元素的集合。
数据结构分为逻辑结构和物理结构
①逻辑结构是指数据对象中数据元素的相互关系
②物理结构是指数据在计算机中的存储方式

通常有以下4类基本结构:
1.集合
结构中的数据元素之间除了“同属于一个集合”的关系外,别无其他关系。
2.线性结构
结构中的数据元素之间存在一个对一个的关系。
3.树形结构
结构中的数据元素之间存在一个对多个的关系。
4.图状结构或网状结构
结构中的数据元素之间存在多个对多个的关系。

算法的一些基本概念
算法:是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。
一个算法应具有以下5个重要的特性:
1. 有穷性
一个算法必须总是在执行有穷步之后结束,并且每一步都可在有穷时间内完成。
2. 确定性
算法中的每一条指令必须有确切的含义,读者理解时不会产生二义性。并且,在任何条件下,算法只有唯一的一条执行路径,即对于相同的输入只能得到相同的输出。
3. 可行性
一个算法是能行的,即算法中的描述的操作都是可以通过已经实现的基本运算执行有限次来实现。
4.输入
一个算法有零个或多个的输入,这些输入取自于某个特定的对象的集合。
5.输出
一个算法有一个或多个的输出,这些输出是同输入有着某些特定关系的量。
算法设计的要求:
1.正确性
算法应当满足具体问题的需求。
2.可读性
可读性好有助于人对算法的理解。
3.健壮性
4.效率与低存储量需求

算法效率的度量
时间复杂度:T(n) = O(f(n))
算法的存储空间需求
空间复杂度:S(n) = O(f(n))

数据结构和算法是密不可分的,它俩相辅相成,单纯的讨论其中一个是没有任何意义的。

0 0
原创粉丝点击