数据结构学习小记-广义表等


字符串

  1. KMP算法:构造next表,找到每一个字符其对应的最大前后缀数,

广义表

  1. 广义表是一种线性表,或者说,是线性表的推广,属于多层次的线性表,广义表中可以存储不可以再分割的元素,同时也可以存储一张广义表(子表)。

  2. 广义表种的数据元素有相对次序;广义表的长度定义为最外层包含元素个数;广义表的深度定义为所包含括弧的重数;其中的原子的深度为0,空表的深度为1;广义表可以共享;一个广义表可以为其他广义表共享;这种共享广义表称为再入表;广义表可以是递归的表,可以是自己的子表;这种广义表称为递归表。递归表的深度是无穷值,长度是有限值;

  3. 广义表的创建就需要进行连接,连接的方法是更具tag进行判断本结点中是Atom(原子)还是Node(结点),再根据其中的选择进行相对应的连接。

  4. 在创建广义表时,要对表进行切割。

有些需要复习的点:

  1. 递归
  2. 共用体,union, enum, typedef,指针,类,继承,重载,....etc.