自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 URL珍藏

网页链接珍藏

2015-03-13 16:23:19 880

原创 gvim/vim在同一行进行上下移动

vim在不同行间进行上下移动用的是j键,但是如果一行内容太长,而编辑器宽度是有限的,那么这一行内容就是被折断显示。这个时候,如何在属于同一行的多个折断行间进行上下移动呢?g+j组合键就为解决这个问题而来。注意:千万别把Shift+j和g+j搞乱了,Shift+j是合并上下行,g+j才是在同一行内进行上下移动。本人就搞乱过。写在这里留个笔记。

2014-06-18 15:08:02 5438

原创 位置预测系列(三)

What’s Your Next Move: User Activity Prediction inLocation-based Social Networks这篇文章来自于SDM’13年(SIAM InternationalConference on Data Mining 2013)的录用论文集,是关于在基于位置社交网络里面(LBSN)进行用户签到预测的。本文解决问题的角度很创新...1.1 论文总结为了预测用户的下一个签到活动类型,作者利用隐含马尔可夫模型(HMM)对用户的活动转移进行建模...

2014-06-17 20:56:34 3496

原创 位置预测系列(二)

这篇论文主要是预测用户在基于位置的社交网络中的下一次签到地点,是ICDM'12年录用的一篇文章。1.1 论文概要在这篇文章中,作者首先将位置预测问题阐述为位置排名问题,即把用户所在城市内的所有签到场所作为候选集,然后根据一定的规则将候选集中的场所进行排名。排名的规则所追求的目标就是尽可能的将用户下一次签到地点排在最前面。。。。。1.2 读后感优点。。。缺点。。。1.3 总结总之,作为一篇数据挖掘论文被ICDM录用还是够格的。以一种纯数据挖掘的角度(特征提取->模型训练->模型测试)来进行位置预

2014-06-12 20:13:22 2802

原创 poj3311 经典tsp问题

TSP问题目前有多种解法:搜索解法,动归解法,启发式解法。这里就针对poj 3311问题给出了前两种解法。搜索解法:这种解法其实就是计算排列子集树的过程。从0点出发,要求遍历1,2,3点后回到0点。以不同的顺序来依次遍历1,2,3点就会导出不同的路径(0->1->2->3->0;0->1->3->2->0等等),总共有3!=6条路径需要考虑,从中选出最短的那条就是所求。搜索解法的时间复杂度为O(n!)。动归解法:仔细观察搜索解法的过程,其实是有很多重复计算的。比如从0点出发,经过1,2,3,4,5点后回

2014-06-02 17:11:24 2456

原创 位置预测系列(一)

关于位置预测,在每年的顶级会议上都有很多文章出炉。下面就简单说说ubicomp'13年录用的一篇论文:The Influence of Temporal and Spatial Features on the Performance of Next-place Prediction Algorithms。1.1 Motivation基于用户移动行为的规律性,现有的位置预测方法都能够获得一个很高的预测精度。然而,目前的方法未能够有效地检测出用户在两个不同位置间的转移。精确地预测出用户在不同位置间的转移行为

2014-05-12 21:48:37 5461

原创 Linux下文本搜索工具grep命令使用入门

1.1 grep命令的变种1.2 grep命令的使用格式1.3 grep命令的参数选择

2014-04-28 20:42:51 2765

原创 堆和栈的区别

c++内存区分为5个部分:常量区;全局/静态区;自由存储区;栈;堆。栈内存申请和堆内存申请时,系统所做的工作的区别;栈和堆的区别;

2014-04-27 12:01:05 1170 1

原创 全排列的三种写法

全排列的三种写法:解法1:递归思想,首先选定第一个数(有n种不同的选择方式),然后对剩下的n-1个数进行全排列;根据此步骤,对剩下n-1数的全排列进行递归。解法2:枚举思想,想象有n个位置,每一个位置可放置一个数。对每一个位置枚举各个数字。解法3:根据初始排列,依次生成下一个排列。如 1 2 3 -> 1 3 2 -> 2 1 3... ...

2014-04-10 21:14:55 2784

原创 回归分析中的参数估计为何是最小二乘法(least squares),不是最小一乘法(least absolute deviations)

如题,面试被问到了。今天网上找了些资料,整理了一下。回归分析就是找到一条最合适的拟合线来逼近所有的观测点。如何衡量拟合的好坏程度呢,直接地,就是看拟合值与观测值之间的距离了。在这种情况下,我们直接用拟合值与观测值差的绝对值就可以衡量误差(如公式1),为什么要用差的平方呢(如公式2)?文献1给出了一个牵强的解释,不过说的也确实很有道理。文献1中的说法就是求解公式(2)的最小值很容易(

2014-04-02 20:37:57 8540

原创 当const指针遇到const引用

当const指针遇到const引用首先,咱们先理清这么几个概念:const指针;指向const对象的指针;const引用;指向const对象的引用。如果你愿意,可以这么认为:所有的引用类型都是常引用。

2014-03-21 21:54:41 1073

原创 十分钟学会Git管理自己的代码

十分钟学会使用Git管理自己的代码1 认识Git,并安装Git2 创建代码仓库3 克隆仓库4 嵌套仓库(仓库下的子模块仓库)

2014-03-14 20:39:28 1999

原创 续前一篇Learn Vim Progressively 进入VIM大师级编辑阶段

VIM高效编辑文本技巧!

2014-03-01 15:57:32 1691

原创 浅谈Codeforces round 217 Summer Reading的两种解法:DP与构造

这是在codeforces上参加的第二场比赛了,虽然最后测评的结果显示在房间排名是第二名,但是与第一名的差距之大却是很难看的。这里,简单地报告一下E题Summer Reading的两种解法。比赛完后,看了作者提供的tutorial仍然是一脸雾水,主要是因为误解block为输入中连续的数字块。之后,借鉴了牛人的代码,才知道block其实是指一本书号的数字块。如给定输入序列为0 0 2 23 3

2014-01-15 20:19:57 1132

原创 暴力搜索中的强度优化练习之Codeforces:Two Circles

暴力搜索中的强度优化,数据结构和数学的完美结合!

2013-11-27 22:08:44 1514 1

原创 POJ 1010 STAMPS

又是一道经典搜索题,剪枝是必须的!题意有点晦涩,参考了网上提供的中文版才明白过来到底是个什么事。具体题意可参考http://blog.csdn.net/sdj222555/article/details/7240991这篇博文,同时也给出了用经典DFS模板写的代码。这里给出了个人所想的剪枝方法:1. 重点剪枝:由于题目中说明了不同类型的邮票可能具有相同的面值,所以这里把首先把邮票按

2013-10-23 21:46:35 760

原创 gdb调试进阶之查看指定内存中的内容

查看数组中的内容:print(缩写p)命令print *array@lenarray是数组第一个元素的地址,可以使用具体的地址或者数组名;len是要显示的元素个数。int a[4] = {1, 2, 3, 4}显示数组a的内容:print *a@4查看指定地址的内容:examine(缩写x)命令x/nfu addrn表示要显示

2013-10-15 16:18:35 1706 1

原创 gdb调试程序简单入门

为了能够用gdb来进行调试程序,编译的时候需要添加-ggdb -ggdb -o xx xx.cpp1.启动gdb调试程序:gdb xx也可以直接键入gdb,然后使用命令file xx来制定要调试的程序2.在正式调试程序前,设置断点是必不可少的,break用来设置断点,命令如:break 行号break 文件名:行号break 函数名break 文件名

2013-10-09 20:07:18 599

原创 POJ 1182并查集的经典运用

#include #include #include using namespace std;typedef struct { int parent; int rank; int tag;}Node;vector v;int n, k;void MakeSet(){ v.clear(); v.resize(n+5); for

2013-10-01 20:18:01 721 1

原创 Trie树实现三----双数组trie树

双数组trie结合了数组形式的转换表和链表形式的转换表的优点,不仅查询速度快,而且使用内存紧凑。下面代码只是提供了Trie树的简单实现,没有考虑动态扩展base和check。具体实现过程的详解请查考An Efficient Implementation of Trie Structures附上代码:#include #include #include #include #i

2013-09-30 16:19:38 1343 1

原创 Trie树实现二

#include #include #include #include using namespace std;class Node;struct EqualTo : public binary_function, char, bool>{ public: bool operator() (pair obj, char ch) const { return

2013-09-26 20:03:55 666

原创 Trie树实现一

Trie树可以用来进行高效的关键字检索,查询效率只跟要查询的关键字的长度相关,可跟hash相比拟。有关Trie树的详细介绍,请参考http://linux.thai.net/~thep/datrie/datrie.html这里给出了Trie树最简单的一种实现,即把Trie树看作有限状态自动机,用数组实现状态的转换。#include #include using namespa

2013-09-26 15:24:05 522

转载 8个搞笑小哲理故事

1、美女住酒店一晚结账时账单800元,她抱怨太贵。经理说这是标准收费,酒店附设泳池、健身房和wifi。美女说自己完全没使用,经理说饭店有提供,是她自己不用。 女客人打开皮包掏钱付账,但说要扣除经理和她共度春宵的700元,只拿出100元。经理急呼:“我哪有?”女客人:“我有提供,是你自己不用!”2、和尚跟屠夫是好友。和尚早上要起来念经,而屠夫要起来杀猪。 为了不耽误各自工作,便约定早上互相叫对方

2013-09-15 20:47:55 783

原创 POJ 1009 Edge Detection

读完此题后,总的感觉就是没有具体的确定的优化方案,所以迟迟没法下手敲代码。于是在网上搜了一下解题报告,看了好几篇仍是感觉好凌乱。直到看了这一篇http://liangsun.org/posts/poj-1009-edge-detection-report/后,思路才算清晰起来。引文首先给出了一个命题:每一个在输出结果中的像素点在原图像中的位置至少跟一个输入像素点相邻。注:这里的相邻是指两个

2013-08-25 16:04:27 2342

原创 二分实现查找不小于x的第一个数/不大于x的最后一个数

要求:对于一个严格升序排列的数组,分别找出不小于特定值x的第一个数和不大于x的最后一个数例:1 2 3 4 5 6 7 8 9 10不小于x=5的第一个数为:5不大于x=5的最后一个数也为:5#include #include using namespace std;int GetLastValueLessThan(int v, vector& svec){ i

2013-08-11 16:55:46 2263

原创 试用CSDN的代码片功能

试用代码片功能#include #include using namespace std;const string haabMonthNames[] = {"pop", "no", "zip", "zotz", "tzec", "xul", "yoxkin", "mol", "chen", "yax", "zac", "ceh", "mac", "kankin", "m

2013-07-28 19:23:37 725

原创 POJ 1008/Maya Calendar

一道水题,竟然WA了快10次了,究其原因就是问题没有彻底查清楚就断然提交!导致一直WA的问题就是在计算Tzolkin年份的时候,边界没有考虑到,直接以totalDays/260得出年份,这样计算直接导致的错误就是当totalDays=260时,会输出年份为1,而事实上是0年的最后一天,应该输出年份为0。附代码:#include #include using namespace s

2013-07-28 19:15:21 538

原创 POJ 1459 Power Network

经典最大流问题,需要将题中的多源点多汇点最大流问题转化为单源单汇。源点s指向power station,边的权重为相应的power station的pmax;consumer都指向汇点t,边权为相应的consumer的cmax;采用Edmonds-Karps耗时有点大,借助scanf才能勉强在1s内跑完!待学习了压入与重标记算法后重写代码。#include #include

2013-07-26 21:21:30 546

原创 Learn Vim Progressively博文学习

接触VIM已经有一段时间了,但是感觉对VIM的使用始终停留在普通编辑的级别,http://完全没有充分发挥VIM的时机效用。前不久接触到了这篇blog:Learm Vim Progressly,又让我重新认识了VIM。这里对自己学习博文做个总结:1. Survive   这一块主要是要求掌握插入模式与正常模式的切换,以及在正常模式下的上下左右   移动。2. Feel

2013-07-25 22:29:36 798

原创 POJ 1006 数论简单题

不用中国剩余定理的知识,直接简单模拟#include using namespace std;const int pc = 23, ep = 28, ip = 33;int p, e, i, d;bool Judge(int ans){ if( (ans-p)%pc != 0 ) return false; if( (ans-e)%ep != 0

2013-07-19 21:49:44 656

原创 POJ 2049 Finding Nemo

搜索练习,在数据预处理部分稍微麻烦一下(即初始化迷宫地图部分),AC时还要注意一下Nemo起始位置可能在迷宫外边,这个时候应该直接返回0。BFS和DFS都在代码里面了!#include #include #include #include #include #include #include using namespace std;const int MAXLEN =

2013-07-14 21:45:47 596

原创 最大流--解法1

默认节点s=0,t=n-1数据输入样例:点数 边数边...6 100 1 160 2 131 2 101 3 122 1 42 4 143 2 93 5 204 3 74 5 4#include #include #include #include #include #include using namespace std;

2013-07-14 21:36:53 583

原创 POJ 1308 Is It A Tree?

在此提供了两种解法:(1)利用树的性质,除了根节点入度为0外,其余节点入度均为1;(2)利用并查集,但是并查集检测是否存在多余的边后,还要检测全部节点构成的是树还是森林。比如测试数据 1 2 2 3 4 5 0 0。Solution 1:#include #include using namespace std;const int MAXSIZE = 10024;vector

2013-07-13 10:43:59 625

原创 java实现批量拷贝音乐文件

一般在利用播放器批量下载歌曲之后,想把刚刚下的歌曲复制到手机里面,但是一个一个筛选刚刚下的歌又太费事,所以干脆动手码一下,以后就省事了。代码功能:将当天下载的歌曲复制到目标目录里面,如果有歌词的话,也会将歌词lrc文件一块复制过去。package moveMusic;import java.io.File;import java.io.FileInputStream;import

2013-07-12 17:53:40 1078

原创 POJ 1861/ZOJ 1542 Network

#include #include #include #include #include #include using namespace std;bool Comp(pair,int> left, pair,int> right){ return left.second < right.second;}void MakeSet(vector& p, vecto

2013-07-11 22:23:03 767

原创 POJ 1129/ZOJ 1084

搜索练习,没什么重要的剪枝要考虑,直接按照dfs模板码就行了!但是网上也有贪心解法,虽然不能确定得到最优解,但是能够ac!精确解法代码如下:#include #include using namespace std;int n;vector > adjList;vector color;int corNum;bool Judge(int l, int c){ i

2013-06-29 11:19:04 850

原创 POJ 1033 Defragment

根据http://hi.baidu.com/algorithm/item/d51b15f7a8ea1c0a84d278be这个开始练习ac,刚开始接触这道题时以为是道搜索题,读完之后深思了一下,感觉不需要套用一贯的dfs或者bfs,直接根据自己的思路走,然后注意一下效率问题就行了!可见算法注重灵活,而不是一贯的套用现有的模式。利用题中示例:

2013-06-27 22:09:05 1318

原创 POJ 1011 Sticks

毫无疑问,非常经典的搜索题。除了在搜索前要对木棍进行排序外,在搜索过程中的两个关键的剪枝必须要考虑到,否则就TLE了:(1)在当前尚未组合的木棍里面,先把第一条尚未组合的木棍做为原始木棍的一部分,然后尝试搜索填充这条原始木棍的剩余部分,若失败,则直接返回上一层。(2)若当前木棍参与当前的组合方式不能得到合法的解,那么后面的长度和这条木棍相同的木棍可以直接跳过。#include #

2013-06-17 21:09:45 856

原创 Beauty of Programming 2013资格赛题解(鄙人参照了no.1的程序)

传话游戏描述Alice和Bob还有其他几位好朋友在一起玩传话游戏。这个游戏是这样进行的:首先,所有游戏者按顺序站成一排,Alice站第一位,Bob站最后一位。然后,Alice想一句话悄悄告诉第二位游戏者,第二位游戏者又悄悄地告诉第三位,第三位又告诉第四位……以此类推,直到倒数第二位告诉Bob。两位游戏者在传话中,不能让其他人听到,也不能使用肢体动作来解释。最后,Bob把他所听到

2013-04-20 21:03:40 767

转载 24岁开始 你要知道的一些事情

2013年都24岁了,今天买了一本《算法导论》和《因为痛,所以叫青春》,碰巧又看了QQ的这篇微摘录,就转了一下,留个纪念吧!        摘自qq微摘录: 24到30岁就是这么一个尴尬的年纪——无法把自己当少年,但也没有人把你太当真。但从24岁开始,有些事情一定要开始做,有些事情也一定要更明白,目的是为了从24岁起,不为任何人,只为自己活得更精彩!   关于人生: 把任何别人看起来是堕落的

2013-01-08 18:01:57 488

空空如也

空空如也

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

TA关注的人

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