自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HFHHXH的专栏

我是在等待一个女孩,还是在等待沉沦苦海。。。

  • 博客(14)
  • 资源 (5)
  • 收藏
  • 关注

原创 背包问题

来自著名的背包九讲,算是笔记吧。n件物品,背包体积V、质量U,物品体积a[i]、质量b[i]、价值c[i],求最大价值。1. 01背包一种物品只有一件,可选可不选f[i][v] = max(f[i-1][v], f[i-1][v-a[i]]+c[i])i 顺序,v 逆序,空间复杂度可以降低一维2. 完全背包每种物品无限多f[i][v] = max(f[i-1][v]

2015-10-31 11:21:02 451

原创 python语法

if x < 0: x = 0 print('Negative changed to zero') elif x == 0: print('Zero') elif x == 1: print('Single') else: print('More')for w in words: print(w, len(w))for i in range(5): print(i)break and contin

2015-10-29 16:18:25 522

原创 DP

状态,保存当前所有状态状态转移方程最优子结构,全局最优解包含局部最优解重叠子问题两种动机:利用递归的重叠子问题,进行记忆话求解,即先利用递归法解决问题,再利用重叠子问题转化成动态规划;把问题看作是多阶段决策过程。两种实现方式:递推(向前和向后)和记忆化搜索。如果需要记录选择、打印路径的话需要辅助数组。

2015-10-28 15:43:35 357

原创 贪心

贪心策略,保证策略正确,每一步都是最优。如果不能保证每一步都是最优,可以选择保存所有状态,然后就转到DP了。

2015-10-28 10:38:47 365

原创 DFS

深度优先搜索递归,或者栈替代,实现比较复杂。

2015-10-28 10:34:47 456

原创 BFS

宽度优先搜索队列

2015-10-28 10:34:01 347

原创 最短路——Floyd

求每两点之间的最短路。还有个有意思的用处,判断每两点之间是否有通路,初始值设为0或者1,d[i][j] = d[i][j] || (d[i][k] & d[k][j]),有向图的传递闭包。for(int k = 0; k < n; ++k){ for(int i = 0; i < n; ++i){ for(int j = 0; j < n; ++j){ if(d[i][k] !=

2015-10-27 15:30:57 347

原创 最短路——SPFA

Bellman-Ford基础上的队列优化,效率比较高,可以检测负环。const int maxn = 110;const int max_int = ~(1<<31);const int min_int = (1<<31);bool inq[maxn];int cost[maxn][maxn], dist[maxn], cnt[maxn], q[maxn], front, rear;

2015-10-27 15:12:13 381

原创 栈和队列

数组模拟实现。模板不熟,改为模板更好一些。class stack {private: int maxsize, t; int *s;public: stack(int n) : maxsize(n), t(0){ s = new int[maxsize]; } virtual ~stack(){ delete []s; } void push(int v){ s[

2015-10-23 19:41:18 295

原创 最短路——Bellman-Ford

可以处理负边,负环。int dijkstra(int s){ for(int i = 0; i < n; ++i){ dist[i] = max_int; } for(int k = 1; k < n; ++k){ for(int i = 0; i < m; ++i){ int x = u[i], y = v[i]; if(dist[x] < max_int){

2015-10-21 10:46:06 479

原创 最短路——Dijkstra

Dijkstra算法,不能处理负边负环,不连通时返回-1。使用优先队列可以优化——spfa,下一篇会介绍。const int maxn = 110;const int max_int = ~(1<<31);const int min_int = (1<<31);bool vis[maxn];int cost[maxn][maxn], dist[maxn];//[0,max_in

2015-10-19 11:01:35 549

原创 哈希

哈希用来查找,哈希的冲突处理,结构类似于线性表,也可以用来存储图,稀疏图,允许重边。插入到头部,效率高一些,但是顺序相反了。const int maxn = 110;const int maxm = 10010;int head[maxn], next[maxm];void init(){ for(int i = 0; i < n; ++i){ head[i] = -1;

2015-10-17 15:59:17 413

原创 字典树

利用公共前缀减少查询时间,节省内存静态分配,动态分配malloc次数太多,效率不行const int maxc = 26;const int maxn = 1000010;typedef struct trie{ int v; struct trie *next[maxc];}trie;trie mem[maxn];int alloc;void init(trie *

2015-10-16 11:32:38 509

原创 并查集

const int maxn = 10010;int p[maxn];int find(int x){if(x != p[x]) p[x] = find(p[x]); return p[x];}int find(int x){return x == p[x] ? p[x] : p[x] = find(p[x]);}for(int i = 0; i < n; ++i){ p[i] =

2015-10-15 10:30:41 377

gtest-1.7.0

gtest测试框架是在不同平台上(Linux,Mac OS X,Windows,Cygwin,Windows CE和Symbian)为编写C++测试而生成的。它是基于xUnit架构的测试框架,支持自动发现测试,丰富的断言集,用户定义的断言,death测试,致命与非致命的失败,类型参数化测试,各类运行测试的选项和XML的测试报告。需要详细了解的朋友可以参阅《玩转Google单元测试框架gtest系列》该篇文章。

2014-08-19

QQ截图工具绿色版

QQ截图工具绿色版

2013-04-22

eclipse ve插件

eclipse Helios 3.6可用,内附使用说明

2012-12-19

ECQ-PS超级进程王 v4.rar

ECQ-PS超级进程王 v4.rar ECQ-PS超级进程王 v4.rar ECQ-PS超级进程王 v4.rar ECQ-PS超级进程王 v4.rar ECQ-PS超级进程王 v4.rar

2009-05-09

MAC隐形人.exe

MAC隐形人.exe MAC隐形人.exe MAC隐形人.exe MAC隐形人.exe MAC隐形人.exe

2009-05-09

空空如也

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

TA关注的人

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