二叉树数据结构学术论文
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关键词:DNA计算机;二又树;数据结构;顺序存储结构 中图分类号:TP384 文献标志码:A
Binary tree data structure based on sequential storage model in DNA computer
ZHU Ya—lil一.LI Ken-li2 (1.Department of Computer Science,Hengyang Normal University,Hengyang Hunan 421008,China;
为了能在按对应完全二叉树从根节点开始,从左到右,从
作。通过检测被限制性内切酶剪切下来的左侧片段,就可以 上到下的顺序编号的二叉树末尾正确追加新的节点元素,需
知道当前二叉树中编号最大的节点元素的值。E一Ⅲ部分是 预先设计好新节点元素的结构,如图3(a)所示。同时,要删
第三种限制性内切酶的识别位点,用于返回二又树中根节点 除编号最大的节点和返回根节点的值还需要预先设计两个
第28卷第6期 2008年6月
计算机应用
Computer Applications
V01.28 No.6 June 2008
文章编号:1001-9081(2008)06—1591—04
DNA计算机中基于顺序存储方式的二叉树数据结构
朱雅莉1’2,李肯立2
1.衡阳师范学院计算机科学系,湖南衡阳421008;2.湖南大学计算机与通信学院,长沙410082) (zhu—mary@163.corn)
以上要求编号的二叉树的末尾追加新的节点。在第一种限制 酶的活性条件下,二叉树编码的DNA双链将从追加位置in 的位置处被切割。在连接酶的作用下,待插入节点元素与二 叉树DNA双链中剪下来的右侧片段进行杂交和连接反应,形
成一个新的DNA双链,从而完成新节点的追加操作。E一Ⅱ部 分是第二种限制性内切酶的识别位点,用于删除当前二叉树 中编号最大的节点元素。在该酶的活性条件下,DNA双链将
.
这三个部分是长度合适的碱基对,碱基对可以是随机的,
其作用是为了确保限制性内切酶能正确识别编码二叉树的
连接酶的作用下,完成连接操作。其中,新节点元素结构中的
序列部分不包含E—I、E一Ⅱ和E一Ⅲ,否则会导致操作错误。 不同节点元素的序列部分编码是不同的,这样才能区分不同
DNA双链的相应位置。由于选择的限制性内切酶的不同,其 的元素。而其他部分的意义与二叉树DNA双链中的相应部
feasibility of this method,an actual binary tree with detailed nucleotide encodings and an instance of algorithm were given.
The process of an algorithm implemented on this binary tree was demonstrated. Key words:DNA computer;binary tree;data structure;sequential storage structure
图4空二叉树的结构
2.2追加新节点元素Bio—BTreeAppend I BT。X) Bio,BTreeAppend(BT,x)表示在保持已有二叉树节点编
号的前提下追加一个新节点元素x,追加后得到的仍是一棵 与相应的完全二叉树编号一致的二叉树。其实现过程为:首 先,在Enzyme I的活性条件下,在编码二叉树的双链DNA分 子的in位置处切割,将产生左半部分L、右半部分R两个片
所对应的识别位点E—I和E一Ⅱ,因此下一次追加和删除操 作均能正确完成。本操作只是追加编号在当前二叉树已有编 号中最大节点之后的节点。 2.3删除编号最大的节点Bio.BTreeDelete(BT,X)
Bio.BTreeDelete(BT,X)表示删除按对应完全二叉树从 根节点开始,从左到右,从上到下的顺序编号的二叉树中编号 最大的节点元素,并获取节点元素的值x。实现过程为:首
2.School of Computer and Communications,Hunan Univerቤተ መጻሕፍቲ ባይዱity,Changsha Hunan 410082,China)
Abstract:Design of data structure is valuable to the concrete realization of DNA computer.Therefore,a method of designing a binary tree based on sequential storage model in DNA computer Was proposed,which utilized the biological characteristics of DNA molecules and restriction endonucleases to complete sequential storage structure and basic operations of the binary tree.All the biological technology mentioned here could be practically implemented in the laboratory.To prove the
收稿日期:2007一12—04;修回日期:2008—02—29。
基金项目:国家自然科学基金项目(60603053,60403002)。
作者简介:朱雅莉(1979一),女,湖南宁乡人,讲师,硕士,主要研究方向:DNA计算;李肯立(1971一),男,湖南娄底人,教授,博士,CCF高
级会员,主要研究方向:并行处理、DNA计算。
万方数据
第6期
朱雅莉等:DNA计算机中基于顺序存储方式的二叉树数据结构
摘要:数据结构的设计对DNA计算机的具体实现有重要研究价值。提出了DNA计算机中基于顺序存储方式 的--y.树数据结构的设计方法,该方法利用DNA分子和限制性内切酶的生物特性,完成二又树的顺序存储结构和基 本操作。其中用到的生物技术在实验室中都能实现。为了验证方法的可行性,给出了一个--y.树的DNA编码及仿真 实例,仿真结果表明该二叉树设计方法在DNA计算机中切实可行。
Bio.BTreeEmpty(BT)用来判断二叉树是否为空二叉树。 方法一:首先,将二叉树DNA双链复制产生新的DNA双链, 记为BT’。然后,在第三种限制酶Enzymelll的活性条件下,在 二叉树DNA双链BT’的null位置处剪切,产生左半部分L、右 半部分R两种片段。检测左半部分L,如果L与detector I的
最大的节点元素操作。由于从BT中剪切下来的左半部分就 是编号最大的节点元素,所以可以通过检测得知当前删除的 元素的值。而且detector I片段编码中含有Enzyme I和
Enzyme II所对应的识别位点E—I和E一Ⅱ,因此下一次追加 和删除操作同样能正确完成。 2.4判断空二叉树Bio.BTreeEmpty(BT)
万方数据
1592
计算机应用
第28卷
在out的位置被切割。在连接酶的作用下,detector I片段与 置正确,这三个部分中的任意一部分可以省略。
二叉树DNA双链中剪下来的右侧片段进行杂交和连接反应, 1.5新节点元素和两个detector片段的结构
形成一个新的DNA双链,从而完成编号最大的节点的删除操
对于完全二叉树,其所有节点元素按从根节点开始,从左 到右,从上到下的顺序编号(编号从1开始),节点元素用6i 表示,其中i为编号。按以上规则把6l、b2、……、6n表示的n个
节点元素顺序存放在DNA双链中,如图2(a)所示。对于非 完全二叉树,则应将其每个节点与其对应的完全二叉树上的 节点相对照,存储在DNA双链的相应位置中,相应的位置上 没有节点则用空节点表示,如图2(b)所示。为了正确实现二 叉树基本操作,在61节点右侧有一个60节点。其中,61表示 根节点,60表示空节点。
1 顺序存储结构
通过对DNA分子存储技术旧1的研究发现,使用DNA分 子来存储信息是可行的。本文采用双链DNA分子来表示 DNA计算机中的二叉树,对于完全二又树,如图1(a)所示,其 所有节点元素的编码按从根节点开始,从左到右,从上到下的 顺序依次存放在DNA双链中。对于非完全二叉树,如图1 (b)所示,将其每个节点与完全二叉树上的节点相对照,存储 在DNA双链的相应位置中。表示二叉树的DNA双链由若干 部分组成。 1.1二叉树节点元素
图3新节点元素和两个detector片段的结构
2二叉树的基本操作
这里,用BT表示DNA计算机中的一棵二叉树,Enzyme I表示第一种限制酶,EnzymeⅡ表示第二种限制酶,Enzyme Ⅲ表示第三种限制酶。 2.1二叉树的初始化Bio-BTreeInit(BT)
Bio.BTreeInit(BT)表示建立一棵空二叉树。为了便于执 行其他操作,通常,空二叉树由9部分组成,其中,bo表示空 节点元素。如图4所示,其实现过程为:首先,按照空二叉树 的DNA编码合成两条单链,记做btl和bt2。btl和bt2是两 条方向相反且满足碱基互补配对原则的DNA单链。然后,在 合适的温度条件下,它们会发生退火反应从而生成代表空二 叉树的DNA双链。
0 引言
自文献[1]用DNA链解决一个简单有向哈密顿图问题 以来,DNA计算已经形成国际科学前沿领域内研究的一个新 热点。已有研究表明DNA计算机具备完整的图灵机功能,这 为DNA计算机能否成为目前意义下真正的计算机提供理论 支持旧J。DNA计算机要走向实际应用,必须需要合理的数据 结构来有效地组织DNA计算机需要处理的信息p o。本文主 要研究DNA计算机中基于顺序存储方式的二叉树数据结构 的设计问题。其中涉及的生物技术在实验室中已有很成熟的 应用H-5]。这里不作详细讨论。
识别位点与剪切位点也不同,所以在某些情况下,只要剪切位 分意义相同。
(P L)fE I)(S I)(E II)(S II)(b5)fb4) (b3)fb2)(b1)fbO)(S—llIOE—IIHP—R)
(a)图1(a)完全二叉树对应的DNA顺序存储结构
(b)图1(b)非完全二叉树对应的DNA顺序存储结构 图2 DNA计算机中二叉树的顺序存储结构
的值。
detector片段的结构,分别记做detector I和detector II,如图3
这三个部分在表示二叉树的DNA双链中分别只能出现 (b)、3(C)所示。它们都是具有粘性末端的DNA分子,其粘
一次,否则会引发操作错误。
性末端与待连接的DNA片段的粘性末端互补。这样,就能在
1.4 s-I、S一Ⅱ和S—III
先,在EnzymeII的活性条件下,在编码二叉树BT的双链DNA 分子的out所在位置处剪切,将产生左半部分L、右半部分R 两种片段,每个片段都含有一个粘性末端。为了正确完成删 除操作,需用到预先设计好的detector I片断,其编码含有P—
L、E—I、S—I、E一Ⅱ、S一Ⅱ和一个粘性末端,该粘性末端与从 BT中剪切下来的右半部分的粘性末端互补。然后,detector I 片段在连接酶的作用下与从BT中剪切下来的右半部分R通 过杂交和连接反应形成完整的DNA双链,从而完成删除编号
(a)完全二叉树
(b)非完全二叉树
图1两棵二叉树
1.2引物部分P-L和P-R 这两个部分是设计在DNA双链的左右两侧的引物,主要
是为了使DNA链的数量得到扩增,从而保证使用DNA双链 来表示二叉树存储结构操作的可靠性。
1.3识别位点部分E—I、E一Ⅱ、E一Ⅲ E—l部分是第一种限制性内切酶的识别位点,用于在按
E—I、s-I、E—lI…S 段,每个片段均含有一个粘性末端。元素X的编码含有P_L、 II X元素的值和一个粘性末端,该粘性 末端与从s中剪切下来的右半部分R的粘性末端互补。然 后,在连接酶的作用下,元素X的DNA片断与从s中剪切下 来的右半部分R通过杂交和连接反应形成完整的DNA双链,
从而完成薪节点元素x的追加操作。 由于元素X的编码中含有内切酶Enzyme I和Enzyme II
Binary tree data structure based on sequential storage model in DNA computer
ZHU Ya—lil一.LI Ken-li2 (1.Department of Computer Science,Hengyang Normal University,Hengyang Hunan 421008,China;
为了能在按对应完全二叉树从根节点开始,从左到右,从
作。通过检测被限制性内切酶剪切下来的左侧片段,就可以 上到下的顺序编号的二叉树末尾正确追加新的节点元素,需
知道当前二叉树中编号最大的节点元素的值。E一Ⅲ部分是 预先设计好新节点元素的结构,如图3(a)所示。同时,要删
第三种限制性内切酶的识别位点,用于返回二又树中根节点 除编号最大的节点和返回根节点的值还需要预先设计两个
第28卷第6期 2008年6月
计算机应用
Computer Applications
V01.28 No.6 June 2008
文章编号:1001-9081(2008)06—1591—04
DNA计算机中基于顺序存储方式的二叉树数据结构
朱雅莉1’2,李肯立2
1.衡阳师范学院计算机科学系,湖南衡阳421008;2.湖南大学计算机与通信学院,长沙410082) (zhu—mary@163.corn)
以上要求编号的二叉树的末尾追加新的节点。在第一种限制 酶的活性条件下,二叉树编码的DNA双链将从追加位置in 的位置处被切割。在连接酶的作用下,待插入节点元素与二 叉树DNA双链中剪下来的右侧片段进行杂交和连接反应,形
成一个新的DNA双链,从而完成新节点的追加操作。E一Ⅱ部 分是第二种限制性内切酶的识别位点,用于删除当前二叉树 中编号最大的节点元素。在该酶的活性条件下,DNA双链将
.
这三个部分是长度合适的碱基对,碱基对可以是随机的,
其作用是为了确保限制性内切酶能正确识别编码二叉树的
连接酶的作用下,完成连接操作。其中,新节点元素结构中的
序列部分不包含E—I、E一Ⅱ和E一Ⅲ,否则会导致操作错误。 不同节点元素的序列部分编码是不同的,这样才能区分不同
DNA双链的相应位置。由于选择的限制性内切酶的不同,其 的元素。而其他部分的意义与二叉树DNA双链中的相应部
feasibility of this method,an actual binary tree with detailed nucleotide encodings and an instance of algorithm were given.
The process of an algorithm implemented on this binary tree was demonstrated. Key words:DNA computer;binary tree;data structure;sequential storage structure
图4空二叉树的结构
2.2追加新节点元素Bio—BTreeAppend I BT。X) Bio,BTreeAppend(BT,x)表示在保持已有二叉树节点编
号的前提下追加一个新节点元素x,追加后得到的仍是一棵 与相应的完全二叉树编号一致的二叉树。其实现过程为:首 先,在Enzyme I的活性条件下,在编码二叉树的双链DNA分 子的in位置处切割,将产生左半部分L、右半部分R两个片
所对应的识别位点E—I和E一Ⅱ,因此下一次追加和删除操 作均能正确完成。本操作只是追加编号在当前二叉树已有编 号中最大节点之后的节点。 2.3删除编号最大的节点Bio.BTreeDelete(BT,X)
Bio.BTreeDelete(BT,X)表示删除按对应完全二叉树从 根节点开始,从左到右,从上到下的顺序编号的二叉树中编号 最大的节点元素,并获取节点元素的值x。实现过程为:首
2.School of Computer and Communications,Hunan Univerቤተ መጻሕፍቲ ባይዱity,Changsha Hunan 410082,China)
Abstract:Design of data structure is valuable to the concrete realization of DNA computer.Therefore,a method of designing a binary tree based on sequential storage model in DNA computer Was proposed,which utilized the biological characteristics of DNA molecules and restriction endonucleases to complete sequential storage structure and basic operations of the binary tree.All the biological technology mentioned here could be practically implemented in the laboratory.To prove the
收稿日期:2007一12—04;修回日期:2008—02—29。
基金项目:国家自然科学基金项目(60603053,60403002)。
作者简介:朱雅莉(1979一),女,湖南宁乡人,讲师,硕士,主要研究方向:DNA计算;李肯立(1971一),男,湖南娄底人,教授,博士,CCF高
级会员,主要研究方向:并行处理、DNA计算。
万方数据
第6期
朱雅莉等:DNA计算机中基于顺序存储方式的二叉树数据结构
摘要:数据结构的设计对DNA计算机的具体实现有重要研究价值。提出了DNA计算机中基于顺序存储方式 的--y.树数据结构的设计方法,该方法利用DNA分子和限制性内切酶的生物特性,完成二又树的顺序存储结构和基 本操作。其中用到的生物技术在实验室中都能实现。为了验证方法的可行性,给出了一个--y.树的DNA编码及仿真 实例,仿真结果表明该二叉树设计方法在DNA计算机中切实可行。
Bio.BTreeEmpty(BT)用来判断二叉树是否为空二叉树。 方法一:首先,将二叉树DNA双链复制产生新的DNA双链, 记为BT’。然后,在第三种限制酶Enzymelll的活性条件下,在 二叉树DNA双链BT’的null位置处剪切,产生左半部分L、右 半部分R两种片段。检测左半部分L,如果L与detector I的
最大的节点元素操作。由于从BT中剪切下来的左半部分就 是编号最大的节点元素,所以可以通过检测得知当前删除的 元素的值。而且detector I片段编码中含有Enzyme I和
Enzyme II所对应的识别位点E—I和E一Ⅱ,因此下一次追加 和删除操作同样能正确完成。 2.4判断空二叉树Bio.BTreeEmpty(BT)
万方数据
1592
计算机应用
第28卷
在out的位置被切割。在连接酶的作用下,detector I片段与 置正确,这三个部分中的任意一部分可以省略。
二叉树DNA双链中剪下来的右侧片段进行杂交和连接反应, 1.5新节点元素和两个detector片段的结构
形成一个新的DNA双链,从而完成编号最大的节点的删除操
对于完全二叉树,其所有节点元素按从根节点开始,从左 到右,从上到下的顺序编号(编号从1开始),节点元素用6i 表示,其中i为编号。按以上规则把6l、b2、……、6n表示的n个
节点元素顺序存放在DNA双链中,如图2(a)所示。对于非 完全二叉树,则应将其每个节点与其对应的完全二叉树上的 节点相对照,存储在DNA双链的相应位置中,相应的位置上 没有节点则用空节点表示,如图2(b)所示。为了正确实现二 叉树基本操作,在61节点右侧有一个60节点。其中,61表示 根节点,60表示空节点。
1 顺序存储结构
通过对DNA分子存储技术旧1的研究发现,使用DNA分 子来存储信息是可行的。本文采用双链DNA分子来表示 DNA计算机中的二叉树,对于完全二又树,如图1(a)所示,其 所有节点元素的编码按从根节点开始,从左到右,从上到下的 顺序依次存放在DNA双链中。对于非完全二叉树,如图1 (b)所示,将其每个节点与完全二叉树上的节点相对照,存储 在DNA双链的相应位置中。表示二叉树的DNA双链由若干 部分组成。 1.1二叉树节点元素
图3新节点元素和两个detector片段的结构
2二叉树的基本操作
这里,用BT表示DNA计算机中的一棵二叉树,Enzyme I表示第一种限制酶,EnzymeⅡ表示第二种限制酶,Enzyme Ⅲ表示第三种限制酶。 2.1二叉树的初始化Bio-BTreeInit(BT)
Bio.BTreeInit(BT)表示建立一棵空二叉树。为了便于执 行其他操作,通常,空二叉树由9部分组成,其中,bo表示空 节点元素。如图4所示,其实现过程为:首先,按照空二叉树 的DNA编码合成两条单链,记做btl和bt2。btl和bt2是两 条方向相反且满足碱基互补配对原则的DNA单链。然后,在 合适的温度条件下,它们会发生退火反应从而生成代表空二 叉树的DNA双链。
0 引言
自文献[1]用DNA链解决一个简单有向哈密顿图问题 以来,DNA计算已经形成国际科学前沿领域内研究的一个新 热点。已有研究表明DNA计算机具备完整的图灵机功能,这 为DNA计算机能否成为目前意义下真正的计算机提供理论 支持旧J。DNA计算机要走向实际应用,必须需要合理的数据 结构来有效地组织DNA计算机需要处理的信息p o。本文主 要研究DNA计算机中基于顺序存储方式的二叉树数据结构 的设计问题。其中涉及的生物技术在实验室中已有很成熟的 应用H-5]。这里不作详细讨论。
识别位点与剪切位点也不同,所以在某些情况下,只要剪切位 分意义相同。
(P L)fE I)(S I)(E II)(S II)(b5)fb4) (b3)fb2)(b1)fbO)(S—llIOE—IIHP—R)
(a)图1(a)完全二叉树对应的DNA顺序存储结构
(b)图1(b)非完全二叉树对应的DNA顺序存储结构 图2 DNA计算机中二叉树的顺序存储结构
的值。
detector片段的结构,分别记做detector I和detector II,如图3
这三个部分在表示二叉树的DNA双链中分别只能出现 (b)、3(C)所示。它们都是具有粘性末端的DNA分子,其粘
一次,否则会引发操作错误。
性末端与待连接的DNA片段的粘性末端互补。这样,就能在
1.4 s-I、S一Ⅱ和S—III
先,在EnzymeII的活性条件下,在编码二叉树BT的双链DNA 分子的out所在位置处剪切,将产生左半部分L、右半部分R 两种片段,每个片段都含有一个粘性末端。为了正确完成删 除操作,需用到预先设计好的detector I片断,其编码含有P—
L、E—I、S—I、E一Ⅱ、S一Ⅱ和一个粘性末端,该粘性末端与从 BT中剪切下来的右半部分的粘性末端互补。然后,detector I 片段在连接酶的作用下与从BT中剪切下来的右半部分R通 过杂交和连接反应形成完整的DNA双链,从而完成删除编号
(a)完全二叉树
(b)非完全二叉树
图1两棵二叉树
1.2引物部分P-L和P-R 这两个部分是设计在DNA双链的左右两侧的引物,主要
是为了使DNA链的数量得到扩增,从而保证使用DNA双链 来表示二叉树存储结构操作的可靠性。
1.3识别位点部分E—I、E一Ⅱ、E一Ⅲ E—l部分是第一种限制性内切酶的识别位点,用于在按
E—I、s-I、E—lI…S 段,每个片段均含有一个粘性末端。元素X的编码含有P_L、 II X元素的值和一个粘性末端,该粘性 末端与从s中剪切下来的右半部分R的粘性末端互补。然 后,在连接酶的作用下,元素X的DNA片断与从s中剪切下 来的右半部分R通过杂交和连接反应形成完整的DNA双链,
从而完成薪节点元素x的追加操作。 由于元素X的编码中含有内切酶Enzyme I和Enzyme II