在C++中,除了教材中的基本数据类型,还提供了()、()、()和()等基本数据类型。
所谓半无穷范围查询(semi-infinite range query),是教材8.4节中所介绍一般性范围查询的特例,具体地,这里的查询区域是某一侧无界的广义矩形区域,比如R=[-1,+1]x[0,﹢∞),即是对称地包含正半y坐标轴、宽度为2的一个广义矩形区域,当然,对查询的语义功能要求依然不变——从某一相对固定的点集中,找出落在任意指定区域R内部的所有点。
范围树(176页习题[8-20])稍作调整之后,固然也可交持半无穷范围查询,但若能针对这一特定问题所固有的性质,改用优先级搜索树(priority search tree,PST)之类的数据结构,则不仅可以保持O(r+logn)的最优时间效率,而且更重要的是,可以将空间复杂度从范围树的O(nlogn)优化至O(n)。
如图x10.3所示,优先级搜索树除了首先在拓扑上应是一棵二叉树,还同时遵守以下三条规则。
①首先,各节点的y坐标均不小于其左右孩子(如果存在)——因此,整体上可以视作为以y坐标为优先级的二叉堆。
②此外,相对于任一父节点,左子树中节点的x坐标均不得大于右子树中的节点。
③最后,互为兄弟的每一对左、右子树,在规模上相差不得超过一。
a)试按照以上描述,用C/C++定义并实现优先级搜索树结构;
b)试设计一个算法,在O(nlogn)时间内将平面上的n个点组织为一棵优先级搜索树;
c)试设计一个算法,利用已创建的优先级搜索树,在O(r+logn)时间内完成每次半无穷范围查询,其中r为实际命中并被报告的点数。
A.学校所在地的街道、社区
B.教材出版部门
C.公安管理部门
D.文化监管部门
A.是将全科/家庭医学理论应用于病人、家庭和社区照顾的一种基层医疗专业服务,是社区卫生服务中的主要医疗服务形式
B.是基本卫生服务系统中的主要医疗服务形式,以其合理使用卫生资源、有效节约卫生经费,成为整个卫生保健系统地坚实基础
C.是除了利用其他医学专业的内容外,还强调运用家庭动力学、人际关系、咨询以及心理治疗等方面的知识技能提供服务
D.是一种集合了其他许多学科领域内容的一体化的临床专业,为人们提供全面的基本医疗保健服务
E.是一个面向个人、社区与家庭,整合临床医学、预防医学、康复医学以及人文社会学科相关内容于一体的综合性临床二级专业学科