- 博客(35)
- 资源 (5)
- 收藏
- 关注
转载 海量数据等概率选取问题
http://www.cnblogs.com/luxiaoxun/archive/2012/09/09/2677267.html
2014-08-15 20:52:58 235
原创 Construct Binary Tree系列
Construct Binary Tree from Preorder and Inorder Traversal Total Accepted: 12846 Total Submissions: 48716My SubmissionsGiven preorder and inorder traversal of a tree, construct the binary
2014-08-12 23:38:04 183
原创 Binary Tree Level Order Traversal系列
Binary Tree Level Order Traversal Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level).For example:Given binary tree {3,
2014-08-12 22:25:25 130
原创 Binary Tree Traversal系列
Binary Tree Preorder Traversal Given a binary tree, return the preorder traversal of its nodes' values.For example:Given binary tree {1,#,2,3}, 1 \ 2 / 3retu
2014-08-12 21:00:33 136
原创 Single Number 系列
Given an array of integers, every element appears twice except for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could you implement it without using ext
2014-08-10 23:49:27 142
转载 maven3常用命令、java项目搭建、web项目搭建详细图解
------------------------------maven3常用命令---------------------------1、常用命令 1)创建一个Project mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=
2014-01-08 14:50:33 191
转载 Maven 环境快速搭建二(eclipse+maven2+jetty)
http://www.cnblogs.com/fnng/archive/2011/12/16/2290587.html本文更新一个命令。第一节中提示创建一个项目用archetype:create create是个被废弃或不被推荐使用的插件,在以后创建项目中请尽量使用archetype:generate创建一个项目,如下:mvn archetype:genera
2014-01-07 13:24:45 196
转载 maven环境快速搭建
http://www.cnblogs.com/fnng/archive/2011/12/02/2272610.html 最近,开发中要用到maven,所以对maven进行了简单的学习。因为有个maven高手在身边,所以,很快就上手了,我这里算是自我总结吧。关于maven是什么东东,请参考其它文章。----------------准备工作-------------Jdk
2014-01-07 13:23:36 182
原创 1020 月饼 (25)
//PAT1020//先按价值高到低排序,然后贪心#include #include #include #include #include using namespace std;struct Species{ double stock; //存货 double total; //总价 double price; //单价 Species(double
2014-01-07 00:09:17 522
原创 1019 数字黑洞 (20)
//PAT1019#include #include #include #include using namespace std;void vector2i(vector& v, int& sum) //vector转整型{ sum = 0; for (int i=0; i<v.size(); i++) { sum = v[i] + sum * 10; }}
2014-01-07 00:08:30 510
原创 1017 A除以B (20)
//PAT1017//模拟人工手算#include #include using namespace std;void div_string(const string& str, int n, string& quotient, int& remainder){ quotient.clear(); remainder = 0; int cur = 0; //用于除以 除
2014-01-07 00:07:42 345
原创 1016 部分A+B (15)
//PAT1016//通过字符串处理获取新整数字符串,然后转为整型#include #include #include #include using namespace std;int main(){ int a[2]; int cnt = 0; while ( cnt < 2 ) { string str, pstr; cin>>str>>pstr; i
2014-01-07 00:07:07 247
原创 1014 福尔摩斯的约会 (20)
//PAT1014#include #include #include #include #include #include #include using namespace std;inline bool is_week(char ch){ return (ch >= 'A' && ch <= 'G');}inline bool is_hour(char ch)
2014-01-07 00:06:24 484
原创 1011 A+B和C (15)
//PAT1011//这题就是死磕自己....//考虑a,b同号溢出问题,若同号转a > c - b, 异号直接相加判断#include using namespace std;inline bool isSame(int a, int b){ return ( a > 0 && b > 0 ) || ( a < 0 && b < 0 );}int main(){ i
2014-01-07 00:05:32 277
原创 1005 继续(3n+1)猜想 (25)
//PAT1005//题意:求出数列中不能被其他数覆盖的数,即关键数//方案:直接使用集合,将被覆盖的数均放入其中,最后遍历数列,若不在集合中,就说明是关键数#include #include #include #include #include using namespace std;void get_overlap_number(set& st, int n) //获取
2014-01-07 00:04:36 262
原创 1003 我要通过!(20)
//PAT1003//规则1和2是基本要求//规则3:aPbTc ==> aPbATca,那么可以逆推 aPbATca 到 aPbTc,直到 a'PATa' 这种形式,说明源字符串是符合要求的//详细说明:aPbTc,则b中每次减少一个A,c中减少a字符串,直到cPATd形式,若c==d,则说明满足规则2,即原串符合要求#include #include using nam
2014-01-07 00:03:38 614
转载 云计算之美[从菜鸟到高手演练]系列之单节点部署CloudFoundry
作者:egg邮箱:xtfggef@gmail.com微博:http://weibo.com/xtfggef博客:http://blog.csdn.net/zhangerqing(转载请说明出处)一、环境需求官方系统环境要求:Setup a VM with a pristine Ubuntu 10.04 Server 64-bit image
2014-01-02 18:47:03 138
原创 "纯种"C++解析unicode文件
C++解析UNICODE字符表示很蛋疼,现在记录下下午的收获,以备以后调用。基本思路:按行读取unicode文件,存为wstring, 再将其转为string,然后通过stringstream来处理,获取想要的数据基本函数:#include #include //string转wstringstd::wstring string_to_wstring(const st
2013-11-20 21:45:42 385
转载 C++读取unicode文本
http://librawill.blogspot.com/2008/08/cunicode_2881.html熟悉一下字符类型,char, wchar_t, TCHAR,最熟悉的char是单字节字符,适用于ANSI编码;wchar_t是双字节的宽字符类型,适用于unicode编码;TCHAR是一个宏,在ANSI坏境下定义为char,unicode坏境下定义为wchar_t。怎么来表示
2013-11-20 15:59:35 437
转载 获取当前时间
http://www.ibm.com/developerworks/cn/linux/1307_liuming_linuxtime1/获取当前时间时间的获取在程序当中, 我们经常要输出系统当前的时间,比如日志文件中的每一个事件都要记录其产生时间。在 C 语言中获取当前时间的方法有以下几种,它们所获得的时间精度从秒级到纳秒,各有所不同。表 1. C 时间函数
2013-11-14 20:02:24 349
转载 BM字符串匹配算法
http://www.cnblogs.com/dsky/archive/2012/05/04/2483190.html在用于查找子字符串的算法当中,BM(Boyer-Moore)算法是目前相当有效又容易理解的一种,一般情况下,比KMP算法快3-5倍。BM算法在移动模式串的时候是从左到右,而进行比较的时候是从右到左的。 BM算法实际上包含两个并行的算法,坏字符算法
2013-11-06 19:12:25 214
转载 SUBVERSION权限配置
http://www.cnblogs.com/bigshow/archive/2008/10/13/1310366.htmlSubversion的权限设置功能为代码的安全访问提供了可靠的保障,通过设置不同的用户权限和组权限,各种角色分工明确,在共享代码的同时保证代码不受破坏。 在建立多个版本库时,每个版本库都有自己的配置文件,可以单独配置用户权限和组权限。为简单起见,将所有版
2013-10-30 13:20:44 224
转载 C++内存管理之一(检测内存泄露)
C++程序的复杂性很大一部分在于他的内存管理,没有C#那样的垃圾回收机制,内存管理对初学者来说很困难。经常会出现内存泄露的情况。那么我们写程序如何避免内存泄露呢?首先我们需要知道程序有没有内存泄露,然后定位到底是哪行代码出现内存泄露了,这样才能将其修复。本文描述了如何检测内存泄露。最主要的是纯C,C++的程序如何检测内存泄露。现在有很多专业的检测工具,比如比较有名的BoundsCheck,
2013-10-28 23:03:45 291
原创 Unix网络编程的艰苦路程
刚来浙大没多久,就开始倍感迷茫,不知哪条是我的路,应该怎么走,用什么标准来衡量所选路的好坏。彷徨中和几位师兄师姐闲聊过后,或许我明白了一些。既然我已经选择了网络这个大方向,那我就要坚定地走下去!现在下定决心努力攻克网络编程的各种难题!
2012-08-22 15:33:37 210
原创 HDU1881毕业bg
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1881思路:题目实质是01背包问题,不过加了几方面的限制 将bg当作物品,离开时间当作重量,快乐度当作价值,则于01背包不同的是物品放入的顺序是有先后顺序的 因此最后的结果不是求f[n][bg[n].t]状态转移方程: f[i][j]=max{ f[i-1][j-bg[i].l]+bg[i].h , f[i-1][j] | j>=bg[i].l,j 结果
2011-02-21 19:53:00 927
原创 HDU1248寒冰王座
<br />题目:http://acm.hdu.edu.cn/showproblem.php?pid=1248<br />思路:经典的完全背包问题,就是每种物品并不是简单的取0件或者是取1件,而是取0或1或2或3或4........件<br /> 故状态转移方程基于01背包问题稍作修改即可<br /> f[i][j]=max{f[i-1][j-k*w[i]]+k*p[i]|0<=k<=j/w[i]}<br /> <br /> 此题p[i]也为w[i]<br /> <
2011-02-21 19:10:00 550
原创 HDU1864最大报销额
<br />题目:http://acm.hdu.edu.cn/showproblem.php?pid=1864<br /> <br />思路:将题目中数字都扩大100倍变成整数,就可看作经典的01背包问题<br /> 设报销额度为背包上限,可报销支票金额为价格,可报销支票金额为重量<br /> p[]存价格,亦是重量<br /> <br />状态转移方程:f[i][j]表示前i个物品放入j中的可得的最大价格<br /> f[i][j]=max{ f[i-1][
2011-02-21 16:40:00 1195 1
转载 0-1背包问题详解
<br />动态规划是用空间换时间的一种方法的抽象。其关键是发现子问题和记录其结果。然后利用这些结果减轻运算量。<br />比如01背包问题。<br />/* 一个旅行者有一个最多能用M公斤的背包,现在有N件物品,<br />它们的重量分别是W1,W2,...,Wn,<br />它们的价值分别为P1,P2,...,Pn.<br />若每种物品只有一件求旅行者能获得最大总价值。<br />输入格式:<br />M,N<br />W1,P1<br />W2,P2<br />......<br />输出格式: <
2011-02-15 18:06:00 369
原创 kruskal算法
kruskal算法其实也是和prim算法一样求无向图的最小生成树,也属于贪心算法,不过prim算法的复杂度为O(n^2),适用于稠密图,而kruskal算法的复杂度为O(eloge),适用于稀疏图。kruskal算法描述很容易理解,如下 1.设连通网N=(V,{E}),令最小生成树初始状态为只有n个顶点而无边的非连通图T=(V,{F}),每个顶点自成一个连通分量 3.在E中选取代价最小的边,加入到T中,若它的添加使T 中产生回路,则舍去此边,选取下一条代价最小的边 4.依此类推,直至T中有 n-1 条边为止
2011-02-02 01:48:00 1962
原创 prim算法
<br />prim算法其实和dijkstra算法在实现上基本上一样,也很容易理解。<br /> <br />prim算法的基本思想:<br />取图中任意一个顶点 v 作为生成树的根,之后往生成树上添加新的顶点 w。在添加的顶点 w 和已经在生成树上的顶点v 之间必定存在一条边,并且该边的权值在所有连通顶点 v 和 w 之间的边中取值最小。之后继续往生成树上添加顶点,直至生成树上含有 n个顶点为止。<br /> <br />在生成树的构造过程中,图中 n 个顶点分属两个集合:已落在生成树上的顶点集 U 和
2011-02-01 16:46:00 685 1
原创 dijkstra算法
dijkstra算法比较容易理解,但是代码有点复杂。求从源点到其余各点的最短路径的算法的基本思想:其中,从源点到顶点v的最短路径是所有最短短路径中长度最短者。路径长度最短的最短路径的特点:在这条路径上,必定只含一条弧,并且这条弧的权值最小。下一条路径长度次短的最短路径的特点:它只可能有两种情况:或者是直接从源点到该点(只含一条弧); 或者是,从源点经过顶点v1,再到达该顶点(由两条弧组成)。再下一条路径长度次短的最短路径的特点:它可能有三种情况:或者是,直接从源点到该点(只含一条弧); 或者是,从源点经过顶
2011-02-01 00:05:00 319
原创 floyd算法
最近开始学算法,感觉存在电脑总有些不安全,没办法,这不是自己的电脑。 对于最短路径算法,floyd的算法的代码无疑是最容易写出来的,代码量少,而且很简洁。 首先要明确floyd算法的思想:从Vi到Vj的所有可能存在的路径中,选出一条长度最短的路径。 若存在,则存在路径{vi,vj}。// 路径中不含其它顶点 若,存在,则存在路径{vi,v1,vj}。// 路径中所含顶点序号不大于1 若{vi, …, v2}, {v2, …, vj}存在,则存在一条路径{vi, …, v
2011-01-31 23:21:00 360 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人