集训队论文1999-2009 集训队2002论 周文超 周文超_第1页
集训队论文1999-2009 集训队2002论 周文超 周文超_第2页
集训队论文1999-2009 集训队2002论 周文超 周文超_第3页
集训队论文1999-2009 集训队2002论 周文超 周文超_第4页
集训队论文1999-2009 集训队2002论 周文超 周文超_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、节目设计中木结构的使用,复旦大学重序初,节目设计中木结构的使用,绪论,绪论,两线树三树阵列概要,绪论,绪论,绪论,绪论,绪论,绪论,绪论,绪论,绪论,绪论,西论,西论,西论,西论,西论,西论,西论,西论。因此,运动员不仅要熟练掌握现有算法,还要大胆创新,建立更有效的算法来解决问题。在以前的节目设计中,链结构使用得比较多。链式结构的优点是编程复杂性低,容易理解,但其致命弱点是相邻两个元素之间的连接不明显。木结构能做好这个。在返回、收集、竞赛中,经常出现的问题是,提供每个元素之间的连接,每个集合的元素必须分为多个直接或间接连接的集合。这些问题主要涉及合并和检索集合,因此这些集合称为并行集合。链结构

2、的并行集树状结构的并行集、链结构的并行集、链表通常用于计算和检查集。表格中的每个元素都设定两个指标。一个指向同一集合中的下一个元素。另一个指向表格的第一个元素。使用链存储结构,在执行集合查找时,算法的复杂性只有O (1)。但是,合并集合时的算法复杂性达到了O(n)。如果我们希望两个茄子基本工作的时间效率比较高,链式存储方式是“无力”。返回、树形结构的并行检查集、树结构支持和检查集的计算可以满足我们的要求。与常规树结构不同,集合记录的是父节点,而不是子节点。下面介绍了树结构并行检查集的两种茄子运算方法,直接在树中查询边缘“路径压缩”,对应于以前的链存储结构,树结构的优点非常明显。编程的复杂性低。

3、时间效率高。返回,直接从树中查询,集合合并算法很简单。只需连接两棵树的根节点。牙齿操作只需要O(1)时间的复杂性。因此,算法的时间效率取决于集合搜索的速度。集合的祖怀效率与树的深度有线性关系。因此,直接查询所需的时间复杂性是平均O(logN)。但是最糟糕的是,树退化变为链,使每个查询的算法复杂性为O(N)。边查询边“路径压缩”,实际上,我们还可以进一步降低集合祖怀算法的复杂性:使用“路径压缩”算法。想法很简单。在查找集合时降低树的深度。使用路径压缩时,ackerman函数的逆函数(X),每个查询的时间复杂性增长非常慢。对于可想象的n,(n)都在5以内。在处理、返回、线段树、图形相关的面积、周长

4、等问题时,不需要依赖深厚的数学知识,但提高处理这些问题的效率是很困难的。为此,必须从根本上改变算法的基本数据结构。这里要说的是特殊的数据结构段树。先看更基础的标题:给出区间的N个分段,判断牙齿区间复盖区间的大小。通过牙齿问题,我们逐渐认识了先端树。线段树的定义在线段树中添加和删除线段计算测量和返回连续线段数。线段树的定义,线段树是二叉树。将一部分除以I,I 1的单元部分。每个单元部分对应于线段树的叶节点。每个节点使用变量count记录复盖该节点的线段数。间隙1,7的对应线段树如下图所示。区间有区段3,6牙齿。类似于在线段树中插入和删除线段,以及在线段树中插入和删除线段。也就是说,段将递归扫描到

5、两个子节点,直到可以复盖节点表示的总间隙。分析表明在线段树中插入和删除线段的时间的复杂性全部为O。,计算测量和连续段的数量。节点的测量M表示节点表示的区段复盖的长度。j-i (count0) m=(count=0,节点是叶节点)lch rch(count=0,节点是内部节点),连续段数line表示间隙中不徐璐相交的段数。连续段数不能像测量一样简单地添加两个子节点的连续段数。所以我们引入了两个lbd,rbd,来表示间隙的左右两端是否被线段复盖。1(左端点被线段复盖)lbd=0(左端点不被线段复盖)1(右端点被线段复盖)rbd=0(右端点不被线段复盖),计算测量和连续线段数,line取决于lbd,

6、rbd定义如下:1 (count 0) 0 (count=0,节点是叶节点)line=lch . linerch . line-1(count=0,节点是内部节点,lchrbd Lchrbd,rch牙齿问题很简单。更新一个矩阵中的元素值以修改矩阵状态并计算子矩阵的数字和,但难点在于数据的大小非常大。现在,我将介绍新的数据结构树阵列。1、设置树阵列C 2、更新元素值3、子序列求和、使用树阵列增加了编程的复杂性,但是程序的时间效率也有了很大提高。这利用了树结构减少搜索范围,利用了集中信息的优势,阵列更新和求和运算涉及到最小的变量。返回,设置树阵列C,首先简化问题,然后求一维子序列的和的算法。将序列

7、设置为a1、a2an算法1。直接从原始序列计算。显然,更新元素值的时间复杂性为o (1)。最坏情况下,子序列和的时间复杂性为(n)。上述两种算法更新元素值需要太长的时间(算法1),或避免子序列总计中的大量运算(算法2)。有更好的方法吗?算法2:添加阵列b。其中bia1 a2 ai。由于Ai中的更改影响bibn,因此在最坏的情况下更新元素值的算法复杂性为O (N)。子序列和的算法复杂性只有O(1)。算法3:增加阵列C。其中Ci=ai-2k 1 ai(k是二进制格式结尾的I的零个数)。可以从c阵列定义衍生的是C1=a1c 2=a1a 2=c1a 2c 3=a3c 4=a1a 2a 3a 4=C2C

8、 3a 4c 5=a5 C6=a5 a6=c5a 6。对元素值和子序列合计的算法复杂性进行统计更新后,返回、C数组的结构对应于树,因此称为树数组。更新元素值,清除受AK影响的序列为Cp1,如果Cp2Cpm,则P1=k,pi 1=pi 2li(li是二进制到pi的结束计数)。以获取更改元素值的方法。如果将X添加到AK,则C数组中有cp1、cp2、CPM牙齿(PMN9必须将C3、C4、c8也添加到X)。返回、子序列总和、子序列总和可以转换为以a1开头的序列a1ak的总和。在树阵列中求S很简单。ck=ak-2l 1 AK (l是二进制数中K的末尾数),从k1=k开始,根据公式ki 1=ki-2lki(lki是二进制数中ki的末尾零数)递归重复k2。结果为S=ck1 CK2 ck3 ckm牙齿。例如,计算a1 a2 a3 a4 a5 a6 a7 k1=7 k2=k1-2 L1=7-20=6 k3=k2-2 L2=6-21=4的子矩阵求和、返回、扩展到二维,类似于(概括地说,在上述示例中,使用树结构处理问题时,通常

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论