一.何为数据结构:
一般情况下,用计算机解决一个问题需要经过以下几个步骤:1.首先要从具体问题抽象出一个适当的数学模型,然后设计一个解此数学模型的算法。最后编出程序,进行测试,调整直至得到最终解答。为什么要说数据结构和算法要一起说呢。因为数据结构中,必须需要算法来提供依赖。计算机解决问题的过程其实就是把虚拟的数据结构转换成人脑中的算法来解决问题的。本章仅仅只是开篇,所以我的体会也很浅。随意说说吧。那么什么是数据结构呢?
简单来说吧,就是研究非数值计算的程序设计问题中计算机的操作对象以及它们之间的关系和操作等。
下面我们进入数据结构这门学科的基本概念
1.数据。数据就像是对客观事物的符号表示,在c语言中整数,实数。生活中的图像,文字等等都是数据。
2.数据元素:是数据的基本单位,在计算机程序中作为一个整体进行考虑和处理。还可以分为若干个数据项组成。数据项是数据的不可分割的最小单位。
3.数据对象:性质相同的数据元素的集合,数据的一个子集。
4.数据结构:相互之间存在一种或多种特定的关系的数据元素的集合。
有如下四种基本结构:
1.集合:结构中分布比较散乱,数据元素之间没有其他关系,除了在一个空间中。
2.线性结构:一对一的关系,一条线的关系,每个人都只有一个前驱,一个后继。就像小朋友排队一样。
3.树形结构:一对多的关系。比如一个家族谱,最上面的是你的老祖宗。下面就分了各种子孙后代。当然这只是个比喻。
4.图状结构或网状结构:多对多的关系。就像是朋友圈一样,你有个很多个好朋友,好朋友也有很多好朋友,然后好朋友的好朋友说不定你也认识。是不是有点绕了?
二.数据结构的形式定义:(待续)