数据结构分类:
一:集合
也就是离散数学上的集合,具有三个特性:
1.确定性
给定任意元素e,能确定它是否属于集合S。
2.互异性
集合中没有重复元素。
3.无序性
集合A={1,2,3}和集合B={3,2,1}是相等的。
集合是最基础的数据结构,由集合可以衍生两种关系:集合内部元素之间的关系和集合与集合之间的关系。
对应的Java数据结构:Set。
二:序列(线性表)
序列描述的是集合内部元素之间一对一的关系,即一个元素只对应一个上级元素和一个下级元素。序列的元素可以重复。
对应的Java数据结构:List。
三:树
树描述的是集合内部元素之间一对多的关系,即一个元素只对应一个上级元素,但是可以对应多个下级元素。
四:图
图描述的是集合内部元素之间多对多的关系,即一个元素可以对应多个上级元素和多个下级元素,所以图中的任意两个元素都可能相关。
由集合内部元素的几种关系可知,序列是一种特殊的树,树一种特殊的图。
五:映射
映射描述的是集合和集合之间的关系。
设A、B是两个集合,如果f是一种法则,使得对于A中的每一个元素x,B中都有唯一确定的元素——记为f(x)——与x对应,则称f是一个由A到B的映射,记作:f:A→B。
集合A中的元素和集合B中的元素是多对一的关系,集合A称作域,集合B为集合A的值域。
对应的Java数据结构:Map。