笔记
文章平均质量分 82
梦贤QAQ
这个作者很懒,什么都没留下…
展开
-
树状数组简单用法
**树状数组概念及用法** 概念 给出一个长度为n的数组,完成一下两种操作: 1、在第i个位置加上k。 2、查询区间[i,j]内每个数的和。 朴素算法 1、单点修改,O(1)。 2、区间查询,O(n)。 树状数组 1、单点修改,O(logn)。 2、区间查询,O(logn)。 这里就可以发现:如果题上的n特别大的话朴素算法时间复杂度太高,然而用树状数组就可以用Olog(n)的时间来完成这些操作。所以说,树状数组最大的好处就是快速的改变某一个点的值,快速的查询某...原创 2021-05-30 20:34:02 · 200 阅读 · 1 评论 -
整数二分常用模板(入门)
二分可以分为整数二分和浮点数二分,但是整数二分常常涉及到边界问题,所以有时候用的时候容易乱。今天就讲一下整数二分的一些常用模板。 常用二分的前提是所求数组的单调性(即升序与降序),这里都以升序为例,整数二分其实可以分为两大类: 1、给定一个升序数组a,与一个x,求数组a中第一个大于等于x的数;(如果求数组a中第一个大于x的数,把if(x<=a[mid])改为if(x<a[mid])即可 ) 给定一个数组,在a数组中寻找第一个大于等于x=8的下标,结束时l就为查找的下标 #include <原创 2021-03-23 16:32:09 · 506 阅读 · 0 评论