论文部分内容阅读
摘要:标号树的编码是一串能够映射一棵标号树结构的标号序列,由于在现代优化算法中便于运算而常常被采用。本文对四种常见的标号树的编解码方法进行了综述,并就标号树直观的边集表示和编码表示之间的转换算法进行讨论,实现了四种标号树编解码的线性算法。
关键词:标号树;Prufer编码;Nevile编码;DM编码
● 引言
标号树是计算机领域中常见的一种数据组织形式,它的传统存储方法通常有双亲表示法、孩子表示法、孩子兄弟表示法、边集表示法等,这些表示方法,在遗传、粒子群等现代优化算法中,由于很难进行运算,所以很少被使用。而标号树的编码是一串可以映射一棵标号树的标号序列,由于其存储简单、便于运算,常常被采用,因而对于标号树编码的深入讨论,无论在计算机的理论还是应用上,都有着十分重要的意义。
1918年Prufer在证明Cayley定理时,最先提出了Prufer编码,1953年Neville提出了三种编码方法,其中第一种和Prufer码一样,后两种称之为Neville2码、Neville3码,近年来Deo和Micikevicius又提出了一种新的编码方法。我们将上述四种编码简称为PR、N2、N3、DM码。
根据编码定义,以上四种编码除DM编解码的算法时间为О(n),其他三种都为О(n2)。近年来一些文献用算法语言给出了它们的线性算法思想。本文在综述上述四种编解码规则之后,用C语言,就标号树直观的边集表示和编码表示之间的转换,给出了编码和解码的线性算法。
● 标号树的编码
1.编码方法
总的来说,四种编码方法都是以叶节点的删除为基础,直至只剩下一条边为止,按照n-2个叶节点的删除顺序,依次将其在删除前的邻接点编号组成一个数字序列,就是其标号树的编码。四种编码的不同在于叶节点的删除顺序不同。
(1)PR编码
删除标号树中最小编号的叶节点;重复第一步,直至该标号树剩一条边。
如图1所示的标号树,PR编码的叶子节点删除顺序应为3、4、5、6、8、1、2、9,其相应的邻接点顺序为(6,10,6,7,1,2,7,7)。
(2)N2编码
按升序将标号树的叶节点整批删除;在修正过的标号树上重复第一步,直至该标号树剩一条边。
如图1,N2编码的叶子节点删除顺序应为第一层的3、4、5、8、9和第二层的1、6、10,其相应的邻接点顺序为(6,10,6,1,7,2,7,7)。
(3)N3编码
从最小叶节点开始,逐个删除其所在链上的节点,直至该链被删除;重复第一步,直至该标号树剩一条边。
如图1,N3编码的叶节点删除顺序应为第一条链3,第二条链4、10,第三条链5、6,第四条链8、1、2,其相应的邻接点顺序为(6,10,7,6,7,1,2,7)。
(4)DM编码
按升序将标号树的叶节点整批删除;对修正过的标号树按照其叶节点出现的先后顺序进行整批删除;重复第二步,直至该标号树剩一条边。
如图1,DM编码的叶子节点删除顺序应为第一层的3、4、5、8、9和第二层的10,6,1,其相应的邻接点顺序为(6,10,6,1,7,7,7,2)。
2.编码算法
(1)存储结构
typedef struct node
{ int data;
struct node *next;
} Node;
typedef Node LTree[N 1];
LTree t;
标号树的存储结构采用了图的邻接表存储形式,其说明语句如上,标号树的邻接表存储示意图见图2。将标号树中每个节点i的度数存放在t[i]的data域中,将与该节点i相邻的所有邻接点,以链表链接在t[i]的next域中,为了节点i和t数组下标的一致,这里数组的长度定义为N 1。
(2)PR编码算法
PR编码算法的思想:在邻接表t中顺序查找出第一个度数为1的节点j(t[j].data=1),当前最小的叶节点u=j,求出和u相邻的节点v,写入编码数组,删除最小叶节点u(t[u].data--,t[v].data--);比较v和j,如果v PR编码算法实现见函数PR( ),c数组存放标号树的PR编码;函数GetAdjvex( )实现标号树t中求解u节点的邻接点运算。
PR( LTree t,int c[] )
{ int i,j,u,v;
u=v=j=0;
for(i=1;i * { if(v
关键词:标号树;Prufer编码;Nevile编码;DM编码
● 引言
标号树是计算机领域中常见的一种数据组织形式,它的传统存储方法通常有双亲表示法、孩子表示法、孩子兄弟表示法、边集表示法等,这些表示方法,在遗传、粒子群等现代优化算法中,由于很难进行运算,所以很少被使用。而标号树的编码是一串可以映射一棵标号树的标号序列,由于其存储简单、便于运算,常常被采用,因而对于标号树编码的深入讨论,无论在计算机的理论还是应用上,都有着十分重要的意义。
1918年Prufer在证明Cayley定理时,最先提出了Prufer编码,1953年Neville提出了三种编码方法,其中第一种和Prufer码一样,后两种称之为Neville2码、Neville3码,近年来Deo和Micikevicius又提出了一种新的编码方法。我们将上述四种编码简称为PR、N2、N3、DM码。
根据编码定义,以上四种编码除DM编解码的算法时间为О(n),其他三种都为О(n2)。近年来一些文献用算法语言给出了它们的线性算法思想。本文在综述上述四种编解码规则之后,用C语言,就标号树直观的边集表示和编码表示之间的转换,给出了编码和解码的线性算法。
● 标号树的编码
1.编码方法
总的来说,四种编码方法都是以叶节点的删除为基础,直至只剩下一条边为止,按照n-2个叶节点的删除顺序,依次将其在删除前的邻接点编号组成一个数字序列,就是其标号树的编码。四种编码的不同在于叶节点的删除顺序不同。
(1)PR编码
删除标号树中最小编号的叶节点;重复第一步,直至该标号树剩一条边。
如图1所示的标号树,PR编码的叶子节点删除顺序应为3、4、5、6、8、1、2、9,其相应的邻接点顺序为(6,10,6,7,1,2,7,7)。
(2)N2编码
按升序将标号树的叶节点整批删除;在修正过的标号树上重复第一步,直至该标号树剩一条边。
如图1,N2编码的叶子节点删除顺序应为第一层的3、4、5、8、9和第二层的1、6、10,其相应的邻接点顺序为(6,10,6,1,7,2,7,7)。
(3)N3编码
从最小叶节点开始,逐个删除其所在链上的节点,直至该链被删除;重复第一步,直至该标号树剩一条边。
如图1,N3编码的叶节点删除顺序应为第一条链3,第二条链4、10,第三条链5、6,第四条链8、1、2,其相应的邻接点顺序为(6,10,7,6,7,1,2,7)。
(4)DM编码
按升序将标号树的叶节点整批删除;对修正过的标号树按照其叶节点出现的先后顺序进行整批删除;重复第二步,直至该标号树剩一条边。
如图1,DM编码的叶子节点删除顺序应为第一层的3、4、5、8、9和第二层的10,6,1,其相应的邻接点顺序为(6,10,6,1,7,7,7,2)。
2.编码算法
(1)存储结构
typedef struct node
{ int data;
struct node *next;
} Node;
typedef Node LTree[N 1];
LTree t;
标号树的存储结构采用了图的邻接表存储形式,其说明语句如上,标号树的邻接表存储示意图见图2。将标号树中每个节点i的度数存放在t[i]的data域中,将与该节点i相邻的所有邻接点,以链表链接在t[i]的next域中,为了节点i和t数组下标的一致,这里数组的长度定义为N 1。
(2)PR编码算法
PR编码算法的思想:在邻接表t中顺序查找出第一个度数为1的节点j(t[j].data=1),当前最小的叶节点u=j,求出和u相邻的节点v,写入编码数组,删除最小叶节点u(t[u].data--,t[v].data--);比较v和j,如果v
PR( LTree t,int c[] )
{ int i,j,u,v;
u=v=j=0;
for(i=1;i
其他文献
摘要:本文从学科性质、学习者特征、教学目标等方面对比小学识字教学和对外汉字教学,并分析了汉字教学中存在的问题。借鉴信息技术在小学识字教学中的运用,从不同阶段的汉字教学入手分析整合策略以及软件平台等在汉字教学中的应用情况,以期利于信息技术与对外汉字教学的整合。 关键词:信息技术;对外汉字教学;整合 在信息技术与课程整合的教育改革背景下,信息技术与对外汉语课程的整合应运而生。信息技术在对外汉语教学
本文围绕新形势下网络通信装维服务"精准、快捷、贴近"的标准和要求,分析了传统"分节式"管理的弊端,从装维调度管理、人员薪酬管理、现场应急管理、培训管理及异常工单管理五个方
【正】 中华书局最近出版了栾贵明先生辑集的两册《四库辑本别集拾遗》,这是一项古籍整理王作新成果。大家知道,清代编集的《四库全书》,是与《永乐大典》一书的辑佚工作分不
随着社会的进步和教育事业的发展,高校公共体育课程出现了不能完全适应时代发展和人才培养要求的问题,通过对我国普通高校公共体育课程改革中出现的较为普遍的问题进行归纳分
【正】 从1792年到热月9日,雅各宾派是山岳派中的激进派;雅各宾主义是它最一致、最有力的表现。雅各宾派,雅各宾主义,这些词汇在当前的政治用语中仍能见到,而且通常都带有某
中国社会治理现代化就是在中国共产党领导下,积极动员各类社会组织和公民个人在民主与法治基础上平等参与社会治理,协调社会关系,预防和消弭社会矛盾,促进社会和谐发展。而社会整
新时代是一个以创新为主题的时代,创新是教育永恒的主题,是素质教育的主要组成部分。在高中数学教学中顺应教育形势的发展,渗透创新教育,培养学生的创新能力是我们所不断探索与研
文章介绍了在VB中的几种数据库访问方案,就如何进行数据库访问方案的选择作了初步的探讨.
【正】 中学历史教学负有三大任务,即使学生掌握基础的历史知识,培养学生运用历史唯物主义观察问题和分析问题的能力,对学生进行思想教育。三者应以使学生掌握历史基础知识为
诉权是公民的一项基本权利,诉权理念已基本宪法化和国际化.刑事诉讼法学界对刑事自诉权理论的研究尚不够充分.刑事自诉权理论有其存在的法理基础,且意义重大.一方面,它为刑事