数据结构学习小记-广义表等
字符串
- KMP算法:构造next表,找到每一个字符其对应的最大前后缀数,
广义表
-
广义表是一种线性表,或者说,是线性表的推广,属于多层次的线性表,广义表中可以存储不可以再分割的元素,同时也可以存储一张广义表(子表)。
-
广义表种的数据元素有相对次序;广义表的长度定义为最外层包含元素个数;广义表的深度定义为所包含括弧的重数;其中的原子的深度为0,空表的深度为1;广义表可以共享;一个广义表可以为其他广义表共享;这种共享广义表称为再入表;广义表可以是递归的表,可以是自己的子表;这种广义表称为递归表。递归表的深度是无穷值,长度是有限值;
-
广义表的创建就需要进行连接,连接的方法是更具tag进行判断本结点中是Atom(原子)还是Node(结点),再根据其中的选择进行相对应的连接。
-
在创建广义表时,要对表进行切割。
有些需要复习的点:
- 递归
- 共用体,union, enum, typedef,指针,类,继承,重载,....etc.