数据结构->概念

数据结构有三要素:

1.逻辑结构

        逻辑结构是指元素之间的逻辑关系,即从逻辑上描述数据。

        数据的逻辑结构分为:(1)线性结构和(2)非线性结构 

        1.1 线性结构

        结构中的数据元素只存在一对一的关系

        1.2 非线性结构

        集合:结构中的数据元素之间除了同属一个集合的关系之外,没有其他的关系

        树性结构: 结构中的数据元素存在一对多的关系

        图状结构或者网状结构: 结构中的数据元素之间存在多对多的关系

2.存储结构

        存储结构是指数据结构在计算机中的表示(又称为映像),也称为物理结构。数据的存储结构是逻辑结构用计算机语言的实现。

        数据的存储结构主要有:1.顺序结构 2.链式存储 3.索引存储 4.散列存储

        2.1 顺序存储

        把逻辑上相邻的元素存储在物理地址上也相邻的存储单元里,元素之间的关系由存储单元的邻接关系来体现。

        优点:可以实现随机存取,每个元素占用最少的存储空间;缺点:只能使用相邻的一整块存储单元,因此可能产生较多的外部碎片

        2.2 链接存储

        不要求逻辑上相邻的元素在物理位置上也相邻,借助指示元素存储地址的指针表示元素之间的逻辑关系。

        优点:是不会出现碎片现象,充分利用所有的存储单元。缺点:每个元素因存储指针而占用额外的存储空间,并且只能实现顺序存取。

        2.3索引存储    

        在存储元素信息的同时,还建立附加的索引表。索引表中的每一项成为索引项,索引项的一般形式是:地址。

        优点:检索速度快;缺点:增加了附加的索引表,会占用较多的存储空间,另外在修改和删除数据的时候要修改索引表,会花费较多的时间。

        2.4散列存储

        根据元素的关键字直接计算出该元素的存储地址,又称为Hash存储。

        优点:是检索,增加和删除节点操作都很快;缺点:散列函数不好的话,可能会出现存储单元冲突,就会增加时间和空间上的开销。

3.数据的运算

        运算的定义:针对逻辑结构的    运算的实现:针对存储结构的


总结和补充:

数据的读写方式:

        1.顺序存取

            需要顺序查找存储介质才能定位所需数据的存取方式

            相关数据结构:链表

            相关硬件结构:磁带

        2.随机存取  

            “随机存取”,指的是当存储器中的消息被读取或写入时,所需要的时间与这段信息所在的位置无关。

            相关数据结构:顺序表

你可能感兴趣的:(数据结构->概念)