zoukankan      html  css  js  c++  java
  • 点分治

    谨代表本蒟蒻个人观点,若有错误请大佬指正。

    如果你是初学者,请到大佬的博客中观摩,这里是蒟蒻口胡

    树和序列都可以认为是某种顺序结构,其中树形结构可以描述一种二位上改变的关系,同样可以表示一种顺序的逻辑。

    所以说这和点分治有什么关系QAQ

    其实没什么关系。

    分治结构基于区间答案可快速合并和区间子问题的高度相似性。

    树上也是这样。

    好吧扯远了。

    考虑如何二分一棵树。

    为什么要二分?QAQ回去看归并排序去。

    那么也就是希望子区间规模相近以达到均衡时间复杂度的目的。

    由于时间复杂度是相加的,所以最坏的复杂度取决于最大的那块。

    所以在分治过程中,最优策略就是使最坏问题最理想。

    最优划分,根据上面的推理,那就递归处理一颗树时得到其重心,在二分处理时,递归处理子树重心。

    故基础时间复杂度为nlogn

    合并答案有好几种方法,有些容斥的我就不是很喜欢了但是很好写。

    最好是子树分开处理累计答案,就不需要容斥了。

    可以有多种形式:(参见CDQ分治方法)

    其实只是一种分治结构,可以有很多种方法哈)

  • 相关阅读:
    UVA-11437 Triangle Fun
    UVA 10491
    CF 223C
    poj 3273
    由异常掉电问题---谈xfs文件系统
    好久没有写博客了,最近一段时间做一下总结吧!
    Json.Net
    div 旋转
    VirtualBox虚拟机网络设置
    windows 2003 安装 MVC 环境 404错误,无法找到该页
  • 原文地址:https://www.cnblogs.com/blog-Dr-J/p/10159364.html
Copyright © 2011-2022 走看看