线性表、广义表、多重链表

线性表、广义表、多重链表

开始实习了,发现每天自我学习的时间好少好少,可能是自己懒吧,其实感觉有很多空闲时间自己可以学习只是自己没有好好把握,以前学数据结构没有好好学,现在补上吧!哈哈还是那句话欠的帐还是要还的。

什么叫线性表?什么叫广义表?什么叫多重链表?

呃....

线性表

借用MOOC上ZJU数据结构姥姥的例子:一元多项式 f(x)=4x^5+3x^3+2x^2+x

节点:

coef : 系数 ,expon : 指数 ,next : 指向下一个节点

表示:

线性表:同一类型的数据元素组成的有序序列的线性结构。

广义表

二元多项式:f(x,y)=8x^12y^6+5x^12y^2+3x^3y^2+x+y=(8y^6+5y^2)x^12+3x^3y^2+x+y

节点:

tag: 0 表示结点是只含有x,1表示该节点含有y

data: 存放系数和指数

sublist:指向存放y信息节点

next:指向下一个节点

表示:

广义表是线性表的推广,也是由n个元素组成的有序序列。与线性表的差别:线性表中的元素都是存储单元素,而广义表中存储的元素不仅仅可以是单元素或另一个广义表。

广义表中结点的两种可能:1、单元素,需要有个域来存储改单元素的值。2、广义表需要有个域来指向另一个链表

多重链表

比如上面的结点:
属于2个链

多重链表:链表中的节点可能同时隶属于多个链

多重链表中结点的指针域会有多个,但包含多个指针域的链表不一定是多重链表。如:双向链表。

感谢MOOC ZJU 数据结构的老师

猜你喜欢

转载自www.cnblogs.com/rookieJW/p/9028127.html