2017/8/23训练日记
2017-08-23 21:13
225 查看
今天一共a了俩题,一个用线段树做的,一个用树状数组做的,其实有的题用多种方法都可以,比如今天用树状数组做的那个实际上用线段树可以做。
线段树和树状数组都是用来处理区间问题的,虽然做的题不多但也看了不少题了;
有很多都是模板题,只要看出来直接套模板就行;
树状数组一般适用于三类问题:
1,修改一个点求一个区间
2,修改一个区间求一个点
3,求逆序列对
而用树状数组能够解决的问题,用线段树肯定能够解决,反之则不一定。
但是树状数组有一个明显的好处就是较为节省空间,实现要比线段树要容易得多,而且在处理某些问题的时候使用树状数组效率反而会高得多。
比如只写区间求和的时候树状数组要快一些;
现在最尴尬的就是有些题看不出来怎么做,或者属于哪种类型的,不好写代码。。。。。。
明天再看看QAQ感觉自己好菜啊,菜/(ㄒoㄒ)/~~
线段树和树状数组都是用来处理区间问题的,虽然做的题不多但也看了不少题了;
有很多都是模板题,只要看出来直接套模板就行;
树状数组一般适用于三类问题:
1,修改一个点求一个区间
2,修改一个区间求一个点
3,求逆序列对
而用树状数组能够解决的问题,用线段树肯定能够解决,反之则不一定。
但是树状数组有一个明显的好处就是较为节省空间,实现要比线段树要容易得多,而且在处理某些问题的时候使用树状数组效率反而会高得多。
比如只写区间求和的时候树状数组要快一些;
现在最尴尬的就是有些题看不出来怎么做,或者属于哪种类型的,不好写代码。。。。。。
明天再看看QAQ感觉自己好菜啊,菜/(ㄒoㄒ)/~~