您的位置:首页 > 理论基础 > 数据结构算法

数据结构——广义表和十字链表

2015-10-30 10:42 447 查看

1.广义表

概念:是线性表的推广,可以存储不同的数据结构,一般记为:LS=(a1,a2,...an);ai可以是单个元素也可以是广义表。

广义表的数据结构是用链结构来实现的。

几个特殊的广义表的长度:A=();长度为0,是个空表,D=((),(e),(a,(b,c,d)))是一个三元素的广义表

E=(a,E)=(a,(a,(a,.....)))是一个长度2的广义表。

A=(())的长度为1,可以分解为表头和表位均为()。

2.m元多项式的表示

直接举例:P(x,y,z)=x^10y^3z^2+2x^6y^3z^2+x^4y^4z+6x^3y^4z+2yz+15
转化为:P(x,y,z)=((x^10+2X^6)y^3+3x^5y^2)z^2+((x^4+6x^3)y^4+2y)z+15
直接的思想就是:把表达式看做是z的多项式,分解为Az^2+Bz+15,而A又进一步分解成Cy^3+Dy^2,C和D又是x的多项式。这样逐一化解吧
所以P=z((A,2),(b,1),(15,0))其中A=y(( C,3),(D,2)) C=x((1,10),(2,6)) D=x((3,5)) B=y((E,4),(F,1)) E=x((1,4),(6,3)) F=x((2,0))

3.十字链表

十字链表是有向图的一种链式表示存储结构。当然也可以用来存储稀疏矩阵。
关于十字链表存稀疏矩阵的结构定义:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: