自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 0/1背包问题

process函数表示,对c和p数组,当前第0至i-1个物品包括在内,已经花费了cost的空间,此时背包容量为bag,此时求对第i个物品,如果不要,这process(c,p,i,cost,bag) = process(c,p,i+1,cost,bag)如果当前剩余容量可以容纳第i个物品,那么,process(c,p,i,cost,bag)的取值为max(process(c,p,i+1,co

2017-12-05 17:37:31 184

原创 BFPRT算法C++实现

BFPRT算法是求数组中第k小(大)的数,时间复杂度为O(n)其算法思路与快排类似。只不过选择标杆值不一样,BFPRT是选择中位数组的中位数来当pvalue,而快排是随机选择。选择之后,进行递归调用,具体实现,请看代码:#ifndef BFPRT_H#define BFPRT_H//BFPRT算法是在不排序的情况下,找到第k小,或者第k大的数//这里以第k小的数为例,进行

2017-11-27 21:04:16 837 1

原创 随机快速排序C++实现

传统的随机快速排序,是选定一个数,然后以这个数为标杆,分为小于等于(标杆)区和大于(标杆)区。改进的快速排序,分为,小于区,等于区和大于区。这个划分的过程用partition函数实现。具体请看代码。#ifndef QUICKSORT_H#define QUICKSORT_H#include#include#includeusing namespace std;void sw

2017-11-27 13:31:28 1774

原创 manacher算法及扩展

最近学习了一些算法,总结一下manacher算法和扩展。manacher算法是求一个字符串中,最大回文子串的长度。#ifndef MANACHER_H#define MANACHER_H//Manacher算法 :找出字符串str中最长的回文子串#define MIN(a,b) a<b?a:b#define MAX(a,b) a>b?a:b#include#include

2017-11-26 13:47:22 323

空空如也

空空如也

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

TA关注的人

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