数据结构与算法---基础概念篇

我们都知道
程序设计 = 数据结构 + 算法
首先我们先来认识数据结构和算法的基本概念。
相关概念:
数据:是描述客观事物的符号,是计算机中能够操作的对象,能够被计算机所识别、并输入给计算机处理的符号集合。
数据元素:是组成数据,有一定意义的基本单位,在计算机中常被作为整体处理,也被称之为记录。
数据项:一个数据元素有若干个数据项组成,是数据不可再分的最小单位。

说明:
数据元素都不是孤立存在的,而是他们之间存在着某些关系,这些数据元素相互之间的关系称之为结构。

数据结构:

定义1—
数据结构是相互之间存在一种或者多种特定关系的数据元素的集合。
定义2—
按某种逻辑关系组织起来的一批数据(或称带结构的数据元素的集合)应用计算机语言并按一定的存储表示 方式把它们存储在计算机的存储器中,并在其上定义了一个运算的集合。

数据结构分为逻辑结构和物理结构(存储结构)。

逻辑结构描述的是数据元素之间的逻辑关系。
物理结构(存储结构)是指数据结构在计算机中的表示,它包括数据元素的表示和关系的表示。
存储结构两方面的内容:
(1)数据元素自身值的表示(数据域)
(2)该结点与其它结点关系的表示(链域)
这里写图片描述
逻辑结构:
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
物理结构:
逻辑数据在计算机中的存储形式:
顺序存储结构:数据元素存储在地址连续的单元里,数据的逻辑关系和物理关系是一致的。
这里写图片描述
链式存储结构::数据元素存储在任意的单元里,存储单元可以连续也可以不连续。
这里写图片描述

算法:

所谓算法(Algorithm)是对特定问题求解方法(步骤)的一种描述。
为解决某一特定问题而由若干条指令组成的有穷序列。
适合于计算机程序实现的求解问题的方法

算法的特性:
一个算法必须满足以下五个准则:
(1)有穷性 : 执行了有限条指令后一定要终止。
(2)确定性 : 算法的每一步操作都必须有确切定义,不得有任何歧义性。
(3)可行性 : 算法的每一步操作都必须是可行的,即每步操作均能在有限时间内完成。
(4)输入 : 一个算法有n(n>=0)个初始数据的输入。
(5)输出 : 一个算法有一个或多个与输入有某种关系的有效信息的输出。

设计算法的要求:

正确性、可读性、健壮性、时间效率高且空间使用率低、简单性。

猜你喜欢

转载自blog.csdn.net/tanrui519521/article/details/80840015