自定义博客皮肤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)
  • 收藏
  • 关注

原创 stl中的upper_bound和lower_bound

lower_bound:返回最小的大于等于key的位置upper_bound:返回最大的小于等于key的位置头文件:algorithm注意:当使用lower_bound时key的值大于最大的值,查找到的位置是越界的(最大下标+1)    而当使用upper_bound的key的值小于最小的值,查找到的位置是第一个下标格式:假设数组为a,长度为n,pos = lower_boun

2017-02-23 18:07:58 411

原创 最长上升子序列

最长上升子序列,众所周知,是dp的经典问题。用简单的dp解决的复杂度是O(n方),用dp+二分的方法解决的复杂度是O(nlogn).1、转移方程:MaxLen (1) = 1MaxLen (k) = Max { MaxLen (i):12、假定存在一个序列d[1...9]=2 1 5 3 6 4 8 9 7,可以看出LIS长度为5。现在开始一步一步的找出

2017-02-23 14:33:07 236

原创 几种情况的二分写法

之前总是对二分的边界问题把握的不是很好,以致于出现死循环等问题。所以用这篇博文进行总结。首先,本文所用算法均为左闭右闭的算法,且数组是以非递减顺序排列的。1、查找是否存在关键值,如有相等的,则返回最左边的那个值的位置。否则,返回-1.代码如下:int binary_search_1(int a[], int n, int key){ int m, l = 0, r =

2017-02-23 13:48:45 2465 1

空空如也

空空如也

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

TA关注的人

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