首页 > 代码库 > 数据结构入门

数据结构入门

结构的概念:数据元素相互之间的关系成为结构

  具备关联关系的非松散集合性结构主要有三种:

 

  线性表:节点按逻辑关系一次排列形成一个“锁链”

    数组其实就是一种典型的线性表,而且是一种物理连续的线性表,即数组中的所有元素在内存中是紧挨着连续保存的

    数组的特性:通过下标(内存偏移量,单位是元素个数)进行元素访问,访问效率高

          数组中每个元素的类型必须一致

          数组的大小一旦确定就不能变更

    链表也是一种线性表,它是一种逻辑上连续的线性表,所谓逻辑上连续,指的是节点与节点直接无需在内存上物理连续存储,

      而是通过引用成员来指向下一个节点的位置,在这种方式下,就可以在内存中动态的进行对象创建无需在创建时就给定长度大小

    链表的特性:通过节点与节点之间通过引用建立关系来访问元素,这个特性来也带来了链表的寻址访问效率低于数组

          容量可以动态的增长和减小

          插入删除的效率非常高

    链表的结构:链表的每个数据项都包含在链结点元素中,链结点是Note类的对象,每个note对象都有一个对下一个结点引用的字段叫next

      链表本身的对象中有一个字段指向对第一个链结点的引用(其他元素都通过第一个节点的关联关系检索到)

      

  :具有分支、层次特性,其形态像自然界中的树;

  :结点按逻辑关系相互缠绕,任何两个结点都可以邻接;

数据结构入门