自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(150)
  • 收藏
  • 关注

原创 谈谈B-Tree 和 B+Tree

前言周末在看《High Performance Mysql》(中文译为《高性能Mysql》)一书的时候,在index部分看到了B-Tree的概念,实际上这个名词于我而言并不陌生,毕竟之前为了应付面试的时候翻过很多博客,但今天再次看到这个名词时突然回忆不起来B-Tree到底是个什么东西了,于是用度娘去搜了一下,结果搜出来的定义千奇百怪(中文社区里面真的是一堆错误文章抄来抄去,甚至有人说B-Tre...

2020-03-22 17:23:45 649

原创 杂谈之什么是FullGC

本文基于JDK 1.8,使用的收集器为ParNew + CMS前言这篇文章的起因是这样的,在上周五凌晨很苦逼得参加双十一压测值班的时候,有个业务方突然打电话来说我们提供的客户端存在内存泄漏问题导致线上应用持续full gc,本来已经快要睡着的我立马就精神起来了,一通排查,最终定位到了确实是客户端有个bug会导致部分数据会被一直持有进入老年代之后gc不掉,从而就导致了老年代的频繁gc,具...

2019-11-15 16:54:09 29790 13

原创 idea 创建的maven+spring+mybatis项目整合 报错无法创建bean

最近在做一个由maven构建的spring+mybatis+struts2项目,刚开始的时候是用自己的老电脑Win7环境下的eclipse写的,托管到了码云上面,刚开始什么问题都没有直到某一天在公司的时候无聊想继续写这个项目,于是就把这个项目clone了一份在公司用的电脑上,在公司用的是mac+idea,结果问题就来了,clone下来的代码居然不能运行!!!,各种看着一脸懵逼的报错信息(ide

2016-07-26 20:29:47 12318 5

原创 2015长春网络赛1003 HDU 5439 Aggregated Counting

题目大意是说给你一个序列(其实这个序列叫做哥伦布序列)这个序列是一个自相关的序列a(n)表示这个序列中n出现了a(n)次,给定a[1]=1,a[2]=2现在要求的是G[i],G[i]表示的是最后一个出现次数为i的数的下标比如数列a=1, 2, 2, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 6,因为a[11]=5;所以G[3]=11;5是数列里面出现

2015-09-13 18:37:07 851

原创 字符串处理相关

1.KMP匹配假定有主串         S  = s1s2s3s4s5s6....sn;模式串     T  =  t1t2t3t4t5t6...........tm;很容易想到的模式匹配算法为两重循环暴力求解但是这样在很多情况下时间复杂度不能满足要求,例如主串和模式串都较大的情况那么我们就需要对这个朴素的算法进行一些优化。首先考虑一下当我们一遍匹

2015-09-05 11:48:42 386

原创 哈希表

定义 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key

2015-08-19 22:56:30 357

原创 hdu 5289 Assignment

st处理区间最值然后就ok了,但是第一次写java代码、、、妈蛋。。内存不足报的是WA,,我也是日了狗了。import java.io.*;import java.util.*;public class Main{ static int T; static int n; static int k; static int f[][] = new i

2015-08-14 12:52:30 331

原创 最后一场多校 hdu 5288 OO’s Sequence

题意就是计算给出的公式我用的l[i]表示ai向前碰到的第一个因子位置用r[i]表示ai向后碰到的第一个因子位置然后ai能被加的次数就是(i-l[i]-1)*(r[i]-i)+(r[i]-i-1)+1,一个遍历加完就ok了#include#include#include#include#include#include#include#include#include

2015-07-23 22:22:06 283

原创 uva 11609 - Teams

大概就是一个排列的和公式吧#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x7fffffff#define lc

2015-05-24 17:20:12 338

原创 uva 11076 Add Again

题意大概就是给你n个数,用这n个数能组成m个整数,求m个整数的和这题知识点就一个就是有重复元素的全排列个数:有k个元素,其中第i个元素有ni个,求全排列个数:全排列个数=n!/(n1!*n2!*n3!*n4!....*nk!)算出每个数出现在每个位置的次数,然后加起来就可以了ps:这道题会卡long long 要用unsigned long long ,貌似uva以前的题经

2015-05-23 20:20:18 350

原创 poj 2096 Collecting Bugs

概率dp第一题期望倒着推,概率正着求用E(i,j)表示状态i,j到目标状态的期望步数那么会有E(i,j)=1+(i/n * j/s)*E(i,j)+(n-i)/n*(j/s)*E(i+1,j)+(i/n)*(s-j)/s*E(i,j+1)+(n-i)/n*(s-j)/s*E(i+1,j+1)然后移项,dp递推就ok了最开始我想的是用E(i,j)表示从状态(0,0)到达状态(i,

2015-04-28 17:29:39 332

原创 白书例题 uva 11021 Tribles

#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x7fffffff#define lc l,m,index<<1#defin

2015-04-27 20:48:41 409

原创 白书例题 uva 10561 Treblecross

反正贴代码就对了白书P138页#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x7fffffff#define

2015-04-25 21:56:36 327

原创 存一些数学用的模板

//ax+by=dvoid gcd(LL a,LL b,LL& d,LL& x,LL& y){ if(!b){d=a;x=1;y=0;} else{gcd(b,a%b,d,y,x);y-=x*(a/b);}}// a^p mod nLL pow_mod(LL a,LL p,LL n){ if(p==0) return 1; LL ans=pow_mod(a,

2015-04-24 19:31:14 297

原创 白书例题 uva 11426 GCD - Extreme (II)

题目就是说给你一个数n要求G(n)G的定义如下显然这种计算G(n)的值的可以通过递推来表示 G(n)=G(n-1)+f(n)那么我们的目标就转换成了求f(n)f(n)=gcd(n,1)+gcd(n,2)+gcd(n,3)+...gcd(n,n-1)我们用phi[i]表示i的欧拉函数值h[i][j]表示1~j-1中,与j的最大公约数为i的数的个数那么f(n)又可以转换

2015-04-20 21:29:08 311

原创 川大oj 4370: Huangshenno1's test

题解来自出题人的blog:http://www.huangshenno1.cn/blog/?p=161就是分块lca的思想下面上一发自己写的代码#include#include#include#include#include#include#include#include#include#include#include#include#include#incl

2015-04-19 18:07:06 466

原创 uva 11361 Investigating Div-Sum Property

很容易看出来是个数位dp,需要考虑的是怎样记录状态需要保证当前状态能被唯一确定才行看了别人的题解才想到的考虑到对于一个数x,x%k的值会等于(x的个位*1)%k + (x的十位*10)%k。。。。所以保存的状态前面可以存入一个数modk的值题意还要求了和也要为k的倍数所以再加一个状态为和%k的值这样dp[len][x][sum]就能表示一个确定的状态转移

2015-04-16 12:04:42 333

原创 uva 11401 Triangle Counting

f(n)表示在1~n的数列里取三个数,所能构成的不同三角形的个数,现在输入n求f(n)这是白书上的一道例题。。。一般这种题都可以转换成递推的形式f(n)=c(1)+c(2)+c(3).+....+c(n)f(n)=f(n-1)+c(n)所以关键是要求c(n)咯,c(n)就可以随便搞了。。我的c(n)和白书的思路不一样#include#include#include#inc

2015-04-13 11:45:24 300

转载 斐波拉切数列

转载自http://blog.csdn.net/acdreamers/article/details/21822165#comments最近要补一下数学了

2015-04-02 17:49:59 577

转载 莫比乌斯反演

转载自http://blog.csdn.net/acdreamers/article/details/8542292莫比乌斯反演在数论中占有重要的地位,许多情况下能大大简化运算。那么我们先来认识莫比乌斯反演公式。 定理:和是定义在非负整数集合上的两个函数,并且满足条件,那么我们得到结论       在上面的公式中有一个函数,它的定

2015-04-02 17:36:58 425

原创 Codeforces Round #273 (Div. 2) C Table Decorations

题意:有三种不同颜色的球,每三个球能组成一个环,但是这三个球不能是同一颜色的球,现在分别告诉你三种颜色的球的个数,球最多能组成多少个环思路:分情况讨论共有这么几种情况1.只有一种颜色的球2.只有2种颜色的球,并且个数相等3.只有2种颜色的球,但是个数不等,并且大的个数小于小的个数的两倍4.只有2种颜色的球,但是个数不等,并且大的个数大于等于小的个数的两倍5.有3种颜

2015-04-02 11:41:34 278

原创 Codeforces Round #247 (Div. 2) D Random Task

。。二分加数位dp、、没有想到二分。看了题解做出来的dp[i][j]   //前i位1的个数为j的个数#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std

2015-04-01 20:15:17 297

原创 uestc oj 686 Hero Saving Princess

告诉你有n个点m条边,还有一个限制就是有的点需要钥匙才能访问,而有些点里面保存着钥匙,最后看能不能遍历完所有的点我的思路是bfs:vis数组表示点是否被锁住use数组表示点是否被访问canuse数组表示是否到达过这个被锁住的点num数组表示,比如num[a]=b,表示的是房间a里有房间b的钥匙在bfs的时候有三种情况:1.如果访问到一个被锁住的点就用canuse标记这个

2015-04-01 16:45:44 293

原创 Codeforces Round #247 (Div. 2) C k-Tree

dp[i][j][0]//第i层和为j不满足条件的个数dp[i][j][1]//第i层和为j满足条件个数#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace st

2015-03-31 11:23:57 338

原创 Codeforces Round #290 (Div. 2) E Fox And Dinner

刚看到这道题的时候就有感觉是一个图论题。。因为可以通过和为质数的两个数字之间建边来构图,但是怎么判成环一直在纠结,最后还是没纠结出来,就去看题解了ORZ然后看到了奇偶建图。。瞬间开窍。。因为感觉质数环肯定是奇偶交替的数形成的,对于两个和为质数的数a,b 。a为偶数,b为奇数,源点为s,汇点为t,只需要建立如下边s->a   容量为2a->b   容量为1b->t    容量为2

2015-03-30 19:15:51 325

原创 Codeforces Round #290 (Div. 2) D Fox And Jumping

gcd(a,b)=1,就ok了#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x7fffffff#define lc l,

2015-03-28 16:43:59 373

原创 Codeforces Round #290 (Div. 2) C题Fox And Names

我是直接暴力建边然后跑一边拓扑序就ok了因为数组开小了RE,WA了好几发。。#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf

2015-03-27 20:32:35 271

原创 poj 1741 Tree 树的分治

这个题自己完全不会做,,,只是看了解题报告之后自己尝试写了一遍。发现思路很是清晰首先是涉及到了树怎样进行分治,然后就引入了重心的概念,所谓树的重心就是删除这个点之后所得到的所有子树的最大顶点数最小,这样的话不管怎么切割这颗树,复杂度都不会退化得太严重然后具体算法就是把这颗树以重心为顶点分为几颗子树,那么满足条件的点对,要么是在同一子树中,要么是在不同两颗子树中,要么其中一个

2015-03-26 21:30:03 350

原创 poj 2763 Housewife Wind

LCA+BIT,LCA用的是基于RMQ的方式实现的,RMQ又是采用传说中的稀疏表实现,也叫st方法最核心的思想就是用dfs遍历一遍有根树,将遍历路径看做是一条链,这样就可以把树转化为链来做了,具体实现是运用了一个时间戳数组记录ps:不知道是递归层数太多,还是vector太坑爹,g++会TLE,c++就AC了#include#include#include#include#inc

2015-03-23 11:43:43 374

原创 lca相关

1.两个点的lca/*寻找两个点的lca记录根节点到u的深度为depth[u],到节点v的深度为depth[v]先让他们的深度保持一致,然后再一起向上走,知道找到lca*/vectorG[max_n];int root;int parent[max_n];int depth[max_n];void dfs(int v,int p,int d){ parent[v]

2015-03-21 12:24:32 287

转载 存一个数位dp的模板

记忆化搜索解数位dp方便快捷见效快。。。。const int MAX_DIGITS, MAX_STATUS;LL f[MAX_DIGITS][MAX_STATUS], bits[MAX_DIGITS];LL dfs(int position, int status, bool limit, bool first){ if (position == -1) return s

2015-03-17 22:59:09 313

原创 hdu 5072(容斥原理)

#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define inf 0x7fffffff#define lc l,m,index<<1#define rc m+1,r,index<<

2014-10-31 12:28:15 283

原创 记第一次区域赛

西安的这次区域赛是我参加的第一次区域赛,chuk

2014-10-27 20:04:35 415

转载 HDU 5035(未AC)

概率论全还给老湿了。什么都不记得了、、、、、、https://www.zybuluo.com/rihkddd/note/34286

2014-09-26 14:17:28 400

原创 hdu 5033 Building

网络赛的时候没有想到,zhi

2014-09-23 00:04:20 340

转载 hdu 5037 Frog

转载至http://blog.csdn.net/zz_1215/article/details/39453753shus

2014-09-22 22:41:56 332

原创 HDU 5015 233 Matrix(网络赛1009)

把第一行的233数列全部左移一位就可以推出一个递推矩阵来

2014-09-14 19:30:31 1096 3

原创 Rotate 网络赛B题

一个简单的几何题,比赛时

2014-09-13 18:00:28 387

原创 codeforces 362c Insertion Sort

题意可以转换成交换任意两个数,使得

2014-09-12 20:02:27 557 1

原创 zoj 3810 A Volcanic Island

网络赛B题,当时看到这个题吓尿了,完全没想法好么,还以为是个

2014-09-11 14:57:37 345

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除