为什么要学习数据结构与算法?
这个问题其实从面试上就可以略知一二,通常,越是大的公司,对于数据结构与算法越是重视,而小公司似乎对于这方面并不关注,小公司似乎只关心你做功能模块是否够快。
在开发中,实现功能的方式可能有很多种,但是,哪种方式是最好最稳最效率的,是需要精心打磨的,这个时候,对于数据结构和算法的掌握程度就变得尤为重要。
数据的基本术语
数据: 程序的操作对象,用于描述客观事物
数据项: 具有独立含义的最小标识单位
数据元素:数据的基本单位,是用一组属性描述定义、标识、标识和允许值的一个数据单元。
数据对象:性质相同的数据元素的集合
数据结构:数据元素之间的关系
数据存储的逻辑关系
线性结构
线性结构是一个有序数据元素的集合,符合一对一的对应关系。
常用的线性结构有:线性表,栈,队列,串
非线性结构
结构中的数据原酸不是一对一的关系。可能是没有对应关系或者一对多的关系。例如:集合结构、属性结构、图形结构
物理结构
物理结构,别称"存储结构". 顾名思义,指的是数据的逻辑结构在计算机的存储形式.