自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 Lambda表达式的升序排序写法

Lambda表达式相当于一个匿名方法,其常见的基本结构为。

2024-03-07 22:27:09 386

原创 有意思的树状数组

接着我们读入2这个数字,此时tr[2]更新为1+2=3,tr[4](第三级) tr[8](第四级) tr[16](第五级)也跟着更新,当读入3这个数字的时候,毫无疑问,这个时候跟tr[1] tr[2] 已经没有关系了,只需要更新tr[3]=3 tr[4]=6 tr[8]=6 tr[16]=6。我们开辟一个树状数组tr[N],用来辅助求出数组a的前n项和。最朴素求前n项和的方法就是依次遍历a[i] += a[i-1],时间复杂度是O(n),我们利用树状数组便可以在O(logn)的时间复杂度求出a的前n项和。

2024-03-07 10:47:36 308 1

原创 单调栈问题

对于该题,当我们寻找7这个数字左边最近的比7小的数字的时候,我们可以把7前面的数字依次入栈,如果出现后入栈的数字比先入栈的数字小的情况,那么先入栈的数字将会被删掉。比如:有一串数字8 4 3 7 9 5,我们需要得到其中任意一个数字左边最近的比该数还要小的数字,那么对于这串数字我们返回的数字为-1 -1 -1 3 7 3。最朴素的做法就是双重循环,第一重循环遍历每个数字,第二重循环遍历这个数字左边的数字,找出最近的比该数小的数字。数字有序地存储在栈中,单调栈有两种,一是单调递增栈,二是单调递减栈。

2024-03-07 10:10:49 282 1

空空如也

空空如也

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

TA关注的人

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