P3919 【模板】可持久化线段树 1(可持久化数组) AC_Code: 1 #include <bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 const int maxn=1e6+10; 5 const int mo ...
分类:
其他好文 时间:
2020-07-22 20:49:10
阅读次数:
77
Redis 增删改查详解 梦和远方 2019-03-12 10:29:48 1352 收藏 2分类专栏: Redis 增删改查版权Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、一个高性能的key-value数据库。并提供多种语言的API。说到Key-Valu ...
分类:
其他好文 时间:
2020-07-21 21:49:18
阅读次数:
78
主席树(可持久化线段树) 前置芝士 知识点 线段树,权值线段树(不一样),离散化,前缀和(思想) 由来 据说,是一位叫fotile主席的大大在写一道题时因为不会划分树就临时yy出一个算法,于是,这算法就这么诞生了。 作用 对区间求 \(kth\) 思想 思考优化策略 一列数,可以对于每个点i都建一棵 ...
分类:
其他好文 时间:
2020-07-19 17:57:51
阅读次数:
52
Splay: 像BST(二叉搜索树)一样插入查询,可以改变树的形状,可以区间翻转,可以实现动态树,不可持久化。 核心代码: 1 void rotate(int a) // 旋转 2 { 3 int b = fa[a], c = fa[b]; 4 int k = son[b][1] == a, w = ...
分类:
其他好文 时间:
2020-07-18 00:54:56
阅读次数:
87
昨天突然脑袋比较清醒,好像似乎以前没有搞太懂的可持久化线段树一下子就搞懂了,结果打了几遍还是出现了一些意想不到的问题,下面我就来整理一下,防止以后重蹈覆辙! 下面我放一个50分的代码: #include<bits/stdc++.h> #define LL long long using namesp ...
分类:
其他好文 时间:
2020-07-17 13:57:31
阅读次数:
57
REDIS Redis简介 什么是Redis redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库(非关系性数据库)。 redis的优势 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1) ...
分类:
其他好文 时间:
2020-07-17 09:41:32
阅读次数:
70
线段树分治。以时间轴建立线段树,每一个线段树节点,存放[L,R]时间内,有影响的操作1,建立可持久化trie树,trie树以商店位置为root,就可以支持商店的区间查询,然后将操作0,按照商店位置排序,进行线段树分治,每次到一个节点,先把操作0插入trie树,然后把所有当前时间内存的有影响的操作1全 ...
分类:
其他好文 时间:
2020-07-08 20:13:47
阅读次数:
59
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 ...
分类:
其他好文 时间:
2020-07-02 09:23:18
阅读次数:
65
数据结构 可持久化平衡树 自己开的可持久化的坑,自己含着泪也要补完≡(▔﹏▔)≡ 【模板】可持久化平衡树 之前刚刚学过fhq_treap 这个数据结构的强大之处:一在于好写好调,码量友好;二便在于便于可持久化 因为普通treap利用旋转来保持时间复杂度,左旋旋,右旋旋,很难维护父子关系,也很难像主席 ...
分类:
其他好文 时间:
2020-06-29 23:00:33
阅读次数:
61
线段树用途: 用于区间修改与求和: 区间修改: 修改l到r之间的值 , 遍历线段树 , 若某个子节点l<=L && R<=r , 则在该节点上标记修改的值 , 访问该节点及他的子节点时再将标记下传; 线段树可持久化: 核心: 永远不修改节点上的值 , 只会新建节点 ; 实现: 每当修改值的时候 , ...
分类:
其他好文 时间:
2020-06-29 22:44:51
阅读次数:
106