按照教材中的描述,文学作为一个概念,首先也是一种“诗性存在”,这是文学概念原初性、生活性、本真
范围查询的另一解法需要借助范围树(range tree)。
为此,首先仿照如图8.37(教材240页)和图8.38(教材241页)所示的策略,按x坐标将平面上所有输入点组织为一棵平衡二叉搜索树,称作主树(main tree)。
于是如图x8.10(a)和(b)所示,该树中每个节点各自对应于一个竖直的条带区域;左、右孩子所对应的条带互不重叠,均由父节点所对应的条带垂直平分而得;同一深度上所有节点所对应的条带也互不重叠,而且它们合并后恰好覆盖整个平面。
接下来,分别对于主树中每一节点,将落在其所对应条带区域中的输入点视作一个输入子集,并同样采用以上方法,按照y坐标将各个子集组织为一棵平衡二叉搜索树,它们称作关联树(associative tree)。于是如图x8.10(a)和(c)所示,每棵关联树所对应的竖直条带,都会进而逐层细分为多个矩形区域,且这些矩形区域也同样具有以上所列主树中各节点所对应条带区域的性质,至此,主树与这o(n)棵关联树构成了一个两层的嵌套结构,即所谓的范围树。
利用范围树,可按如下思路实现高效的范围查询,对于任一查询范围R=[x1,x2]×[y1,y2],首先按照[x1,x2]对主树做一次×方向的范围查询。根据8.4.1节的分析结论,如此可以得到o(logn)个节点,而且如x8.10(b)所示,它们所对应的竖直条带互不重叠,它们合并后恰好覆盖了x坐标落在[x1,x2]范围内的所有输入点。
接下来,深入这些节点各自对应的关联树,分别按照[y1,y2]做一次y方向的范围查询。如此从每棵关联树中取出的一系列节点,也具有与以上取自主树的节点的类似性质,具体地如图x8.10(c)所示,这些节点所对应的矩形区域互不重叠,且它们合并之后恰好覆盖了当前竖直条带内y坐标落在[y1,y2]范围内的所有输入点。换而言之,这些点合并之后将给出落在R中的所有点,既无重也不漏。
a)试证明,如此实现的范围树,空间复杂度为o(nlogn);
b)按照以上描述,试利用你的范围树实现新的范围查询算法;
c)试证明,以上范围查询算法的时间复杂度为O(r+log2n),其中r为实际命中并被报告的点数;
d)继续改进以上范围树,在不增加空间复杂度的前提下,将查询时间减至O(r+logn)。
A.IntegratedIS-IS使用L3路由作为骨干路由
B.骨干网是一个连续的L2或L1/L2ISIS路由器的链条
C.IntegratedISIS路由器属于至少一个area,不需要中央化的骨干area
D.所有的ISIS其他area都必须连集中接到ISIS的骨干area上
A.事务:是一系列的数据库操作,是数据库应用的基本逻辑单位
B.数据库基本的锁类型按照数据的锁定范围的大小分为行锁和表锁
C.视图是一种虚拟的表,具有和物理表相同的功能
D.存储过程是一个预编译的SQL语句,优点是允许模块化的设计,但是以后在程序中调用的话,每调用一次就需要编译一次
A.Java中创建类的关键字是class
B.类中可以有属性与方法,属性用于描述对象的特征,方法用于描述对象的行为
C.Java中对象的创建,首先需要定义出一个类
D.一个类只能创建一个对象
A.一个user可以添加到多个project中
B. project和tenant是同一个概念,用于描述分配资源的集合
C. 一个domain下可以有多个project
D. 一个user可以属于多个role(只能有一个角色,一个角色可以给多个用户)
下列关于对象概念的描述中,错误的是()。
A.C++中的对象就是C语言中的结构变量
B.对象代表着正在创建的系统中的一个实体
C.对象是一个状态和操作(或方法)的封装体
D.对象之间的信息传递是通过消息进行的