在大二的时候学习过数据结构,当时并不知道那东西对我们写代码和以后找工作有什么帮助,那个时候主要在自学java和android的知识,不想在那上面花太多时间,所以学的时候也不算多认真,只是为了应付一下学校的考试,后来在大三上学期期末网上看了别人的面试题,才发现数据结构,算法设计和操作系统这些东西都是必备技能。。。所以,大三下学期开始撸起数据结构,希望不算太晚,先为自己加油!
作为程序员,我们首先应该关注的是自己的代码运行的效率如何(个人看法,个人觉得代码质量好不好,与运行效率有直接关系,一个不会优化代码的人,其程序运行效果也肯定不会理想),所以,数据结构的设计显得非常重要。
在学习数据结构前,我们先要弄明白:一、什么是数据-----数据是人们利用计算机符号对客观现实世界的事物及其活动所做的抽象描述的信息,比如:我的姓名:XXX;我的年龄:22岁。二、什么是数据元素-----数据元素是指表示一个事物的一组数据。
什么是数据结构?数据结构是指相互之间存在一种或多种特定关系的数据元素的集合,数据结构包含了三个方面的内容:
①数据的逻辑结构:是数据元素之间本身所固有的,独立于计算机的一种结构,这种结构可以用数据元素之间固有的关系的集合来描述。
②数据的存储结构:是逻辑结构在计算机存储器中的具体存放方式的体现,是逻辑结构在计算机存储器中的映像。
③对数据所施加的一组操作:是指对数据对象进行处理的一组运算或处理的总称。操作的定义直接依赖于逻辑结构,但操作的实现必须依赖于存储结构。
根据数据元素之间存在的关系不同特性,数据结构通常分为如下4类基本结构:
①线性结构 :数据元素之间存在一对一的线性关系(即除开第一个和最后一个元素,每个元素都有一个直接前驱和一个直接后继)如图所示:

②树形结构:数据元素之间存在着一对多的关系。如图:

③图形结构:数据元素之间存在多对多的关系。如图:

④集合结构:数据元素之间无任何关系。如图:

浙公网安备 33010602011771号