「请访问知乎查看此问题的全部 5 个回答」
感谢 leo ding 和 毛自力 ,两位说的对我很有启发
— 完 —
再说说只含有一个数据的链表/队列/堆栈/树,依据你给的定义:“相互之间存在一中或多种特定关系的数据元素的集合”,只含有一个数据甚至不含有数据也能算作一个“集合”;从实际结构上来说,一个链表只含有一个数据甚至不含数据,他还是会有指针域和表头,队列/堆栈等也一样,而这些部分就表现了“关系”相反,单个int/char/float/double数据不含有这些表示关系的部分,所以不能算做一种特殊的 数据结构
int char float double 这些是 数据类型 ,类比作原子,他们间的不同就数据结构课程介绍是元素种类的不同,只涉及自身的不同,比如两种原子内的质子中子数不同,是一直内在属性
本文作者:沈兄 http:///download
我补充一下我的想法,还是延续 原子 和 分子 的比喻
链表 队列 堆栈 树 这些是数据结构,类比作分子,他们间描述的是数据间的关系,就如同分子描述了原子的组合方式,
最后,“数组”确实是一个令人头疼的概念,不过我觉得应该把他算作 数据结构 的一种依然先从定义上来看,他确实描述了一种关系,只不过刚好描述的数据一个挨一个紧密排列的关系;从实际结构上来说,我和 陈岩 看法不同,单个char/int确实和数组一样内存上连续,但两个char间不一定是连续的,但数组中却一定是连续的数据结构是什么课程,数组描述的正是这种紧密连续的 数据结构 数组在内存中储存时也有末尾的多余部分“0”来描述“结束”这一关系
如何治白癜风