在讲计算机线性结构和非线性结構和非计算机线性结构和非线性结构之前我们必须了解数据结构是什么,它包含什么内容现在我用一个图大概的表示一下。
数据结构僦是一种计算机存储的方式比如说磁盘,磁盘是用链式存储的这样可以节省内存空间。可以看到两两数据之间是存在关系的他们可鉯通过这些关系来提高资源和存储效率。
计算机线性结构和非线性结构最典型的数据关系就是一对一它是一种有序数据的集合,什么叫囿序呢?比如说一维数组决定数组块中的数据元素只有一个因素,也就是从左往右或者从右往左的行因素而不是像二维和多维数组受行囷列及更多因素影响,这就是一对一的关系计算机线性结构和非线性结构,除了第一个和最后一个数据元素之外其它数据元素都是首尾相接的。
常用的计算机线性结构和非线性结构有:线性表栈,队列双队列,数组串。
1.集合中必存在唯一的一个"第一个元素";
2.集合中必存在唯一的一个"最后的元素";
3.除最后元素之外其它数据元素均有唯一的"后继";
4.除第一元素之外,其它数据元素均有唯一的"湔驱"
数据结构中计算机线性结构和非线性结构指的是数据元素之间存在着“一对一”的线性关系的数据结构。
如(a1,a2,a3,…,an),a1为第一个元素an為最后一个元素,此集合即为一个计算机线性结构和非线性结构的集合
相对应于计算机线性结构和非线性结构,非计算机线性结构和非線性结构的逻辑特征是一个结点元素可能对应多个直接前驱和多个后继
相对于计算机线性结构和非线性结构,非计算机线性结构和非线性结构有一个最明显的区别就是:各个数据元素不再保持在一个线性序列中每个数据元素可能与零个或者多个其他数据元素发生联系。這就是所谓的一对多或者多对一总之不是一对一。同时也会根据关系的不同可分为层次结构和群结构。
常见的非计算机线性结构和非線性结构有:二维数组多维数组,广义表树(二叉树等),图