首页 > 其他分享 >kdt学习笔记

kdt学习笔记

时间:2023-02-12 18:33:05浏览次数:37  
标签:维体 博客 学习 笔记 kdt 节点

由于本人文笔,理解有限,所有本文大量引用他人的博客,文章。

这段时间学习了一下kdt,发现这个东西很妙妙。

它是干嘛的呢?是一种可以 高效处理  多维空间信息 的数据结构。骗分神器。

特别的,在OI中k一般是2,3,4。当k等于1的时候,可以理解为它就是替罪羊树。

建树

kdt是一个二叉搜索树,每一个节点都代表着一个k维空间中的一个点,都记录着一个k维体,特别的,每个节点的子树里的所有节点都包含在这个k维体中。左右儿子所记录的k维体都是父亲划分而来,这就是kdt的精髓。

具体流程:节选自cmd博客(orz)

 

 对于分割维度的选择,我请教了lxl神仙,得到了准确答复:

 

 对于nth_element,对于初学者肯定会很纳闷,给出oiwiki的介绍

 

标签:维体,博客,学习,笔记,kdt,节点
From: https://www.cnblogs.com/Hanghang007/p/17114402.html

相关文章

  • Maven基础学习
    MavenMaven是专门用于管理和构建Java项目的工具,它的主要功能有:提供了一套标准化的项目结构提供了一套标准化的构建流程(编译,测试,打包,发布……)提供了一套依赖管理机制......
  • Redis学习笔记Ⅲ
    RedisⅢRedis主从复制的概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的......
  • Redis学习笔记Ⅰ
    RedisⅠRedis.conf详解单位注意事项:当需要内存大小时,可以指定#Noteonunits:whenmemorysizeisneeded,itispossibletospecify#itintheusualformof......
  • Redis学习笔记Ⅱ
    RedisⅡRedis发布订阅官网很简介了已经。订阅进阶:消息队列Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis客户端可以......
  • JVM垃圾回收 笔记
    垃圾回收算法新生代中因为对象都是“朝生夕死的”,深入理解JVM虚拟机上说98%的对象存活率很低,适用于复制算法,复制算法比较适合用于存活率低的内存区域。它优化了标记/清除......
  • 嵌入式学习框架
    中大型的嵌入式开发是在linux平台上进行上层应用开发、linux层面的驱动等内核开发以及底层的硬件设计;通过linux上的设备驱动程序来驱动硬件。所以嵌入式开发可以细分为三类......
  • Mybatis-尚硅谷-学习笔记
    https://blog.csdn.net/weixin_45581692/article/details/127508494?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167619048716800188527496%2522%252C%2522......
  • 学习python中的字符串操作
    字符串字符串的存储地址原理​ 在python中有一个字符串保留区,当中存放了声明的字符串,每一个字符串对应一个地址,变量名指向对应的地址,只要字符串相同,声明内容相同的字符......
  • Linux学习-day9
    第六章存储结构与管理硬盘6.1一切从“/”开始Linux系统中一切都是文件​Linux系统中的一切文件都是从“根”目录(/)开始的,并按照文件系统层次标准(FHS)采用倒树状结构来存放......
  • C语言学习:读写一行字符
    1#include<stdio.h>2#include<io_utils.h>3#include<errno.h>4#include<string.h>56voidReadFile1(){7FILE*file=fopen("CMakeLists.txt"......