浅谈数据结构

我没有系统的学习过数据结构,没有办法长篇大论的谈论数据结构,不过可以辅助理解一些涉及到数据结构的东西,例如集合

数据结构

定义一:数据元素集合(也可称数据对象)中各元素的关系.

定义二:相互之间存在一种或多种特定关系的数据元素集合

数据

定义:是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号总称

数据元素

定义:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理

数据对象

定义:性质相同的数据元素的集合,是数据的一个子集

元素或结点

定义:在计算机中表示信息的最小单位是二进制的一位数,我们可以用一个由若干位组合起来形成的一个位串表示一个数据元素,通常称这个位串为元素或结点

数据域

定义:当数据元素由若干数据项组成时,位串中对应于各个数据项的子位串成为数据域

数据结构分逻辑结构和物理结构

逻辑结构分为:

          1.集合---------数据元素之间除了同属于一个集合之外再无其他关系,也可以说是松散的关系

          2.线性结构-----数据元素具有一对一的前后关系

    1).线性表:一个线性表是n个数据元素的有序序列

      线性表的顺序表示指的是用一组地址连续的存储单元一次存储线性表的数据元素.增删慢,例如在表的中段添加一个结点,需要移动其后的所有结点位置,删除类似;改查快,可以根据索引直接找到结点的位置.

         线性表的链式表示存储结构的特点是用一组任意的存储单元存储线性表的数据元素.增删快,在表中增加一个节点,不需要改动其他结点的位置,只需要更改结点的指针域.

                            为了表示每个数据元素a1与其直接后继数据元素a2之间的逻辑关系,对数据元素a1来说,除了存储器本身的数据信息之外,还需存储一个指示其直接后继的信息.这两部分嘻嘻组成数据元素a1的存储映像,称为结点.它包裹两个域:其中存储数据信息的域称为数据域;存储直接后继存储位置的域称为指针域.指针域存储的信息称作指针或链.

                      循环链表:表中最后一个结点的指针域指向头结点

                      双向链表:结点中存在两个指针域,一个指向上一个元素,一个指向下一个元素

                      :是限定仅在表尾进行插入或删除操作的线性表,后进先出

                      队列:只允许在表的一端进行插入,而在另一端删除元素.先进先出

          3.树形结构-----数据元素具有一对多的父子关系   有且仅有一个特定的称为根的结点.

                   二叉树:每个节点至多只能有两个子节点

          4.网状结构-----数据元素具有多对多的交叉映射关系

物理结构分为:

          1.顺序存储结构,也称为数组结构

           数据元素放在一块连续的存储空间,数据关系与物理关系是一致的.

          2.链式存储结构 

          数据元素放在内存空间的任意位置,数据元素之间通过指针连接.        

 

posted @ 2017-06-06 16:45  海老头  阅读(175)  评论(0编辑  收藏  举报