自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ylf13的专栏

life and programming

  • 博客(36)
  • 资源 (2)
  • 收藏
  • 关注

原创 算法习题67(1):扑克牌顺子游戏

扑克牌的顺子从扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这 5 张牌是不是连续的。2-10 为数字本身,A 为 1,J 为 11,Q 为 12,K 为 13,而大小王可以看成任意数字。-----------------------------------炸一看,这题并不难,不过仔细想想,该如何表示这个结构呢?一开始,想尝试用链表,把牌数字按顺序排序好,如果是司令则记录司令

2013-11-25 12:46:14 1473

原创 正则表达式

推荐大家一个正则表达式速成网址:http://deerchao.net/tutorials/regex/regex.htm版本:v2.33 (2013-1-10) 作者:deerchao 下面是我的学习笔记在网页抓取中,我们经常需要分析html内容,而其内容庞大,节点多,如何高效识别呢?推荐大家使用正组表达式:(1)常用元字符常用的元字符代码 说明. 匹配除换行符以

2013-11-23 21:38:23 1023

原创 centOS服务器的搭建(乱来一通)

瞎忙活了两天了,今天就总结下吧,实验室新搞了一台服务器,老大打算把所有大运算都用这台进行,丝毫不懂服务器的我们就这样开始乱来一通了。。。其实说是服务器,算不上,就是我们实验室的一台公共电脑罢了,我们运行matlab的时候需要较多的运算,据老大说他们曾经跑过几天的数据量,所以就搞一个这个来提升下性能。我们的观点就是,内存够大,啥都能解决,反正又不是搞天文运算的。配置上好点就好。    我们用

2013-11-22 19:53:01 1231

转载 搜索引擎学习资源收集

这篇文章貌似至少六年前人写的,很多信息可能有些过时了,例如博客链接都失效了,大家就取其精华把[转自]http://wind-bell.iteye.com/blog/81504搜索引擎学习资源收集一、搜索引擎技术/动态资源、综合类1、卢亮的搜索引擎研究 http://www.wespoke.com/ 卢亮属于搜索引擎开发上的专家,以前开发过一个搜索引擎

2013-11-19 17:37:24 2615

原创 Java之BerkeleyDB(三)

这里简单再介绍下Berkeley的二级数据库的知识,最近没怎么接触又忘了,本来是在想,这个数据库是基于内存的,那持久化问题怎么解决呢?是否有什么API可以实现存储到磁盘上呢?后来发现,其实BerkeleyDB已经为我们实现了自动存储,只需要我们正确close(),数据就会存储起来了,于是乎,就再看看二级数据库。。二级数据库的来源:Usually you find database

2013-11-19 17:26:51 1834

转载 【转】linux 安装Tesseract-OCR

转自:http://www.2cto.com/os/201202/119807.htmllinux 安装Tesseract-OCR准备工作:编译环境: gcc gcc-c++ make(这个环境一般机器都具备,可以忽略)  1yum install gcc gcc-c++ make 依赖的包: autoconf automake libtool libjpeg-deve

2013-11-18 20:45:14 4627

原创 算法习题66:颠倒栈

颠倒栈。题目:用递归颠倒一个栈。例如输入栈{1, 2, 3, 4, 5},1 在栈顶。颠倒之后的栈为{5, 4, 3, 2, 1},5 处在栈顶。---------------------------------需要两中递归,一个是把底部元素找到,返回,然后最后压入,这样我们另一个递归从上至下,即可完成注意要用引用,之前当成Java的写法,不用你引用,怎么改都不行,调试了才

2013-11-18 10:52:48 1013

原创 算法习题65:输出1到最大的N位数

.输出 1 到最大的 N 位数题目:输入数字 n,按顺序输出从 1 最大的 n 位 10 进制数。比如输入 3,则输出 1、2、3 一直到最大的 3 位数即 999。--------------------------------------------------(1)第一种:直接法这道题看起来还是比较简单的void CountNum(int N){ int max

2013-11-17 17:55:14 784

原创 算法习题64:寻找丑数2 3 5的倍数

题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第1500个丑数。--------------------------------这题目其实类似之前一个统计某个数出现的1的个数,统计n以下所有数出现的1的次数。。这种题目如果用直接法一般能够迅速写出答案,

2013-11-15 11:42:53 1091

原创 算法习题63:字符串删除特定字符

题目:字符串删除特定字符输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”Theyare students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。---------------------------------------------对于这中类型的题目,如果要一个个循环,那么O(m*n)。。可不可

2013-11-14 11:52:06 1113

原创 算法习题61:找出数组中两个只出现一次的数字:一个整型数组里除了两个数字之外,其他的数字都出现了两次

找出数组中两个只出现一次的数字题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是 O(n),空间复杂度是 O(1)。------------------------------------------------------------这题考查的是位的运算问题。如何区分数与数的不同呢?在位运算里不就是与 或 异

2013-11-14 11:33:43 2547

原创 算法实战5:多种数据结构实现四则运算

其实问题还是挺多:(1)例如输入非运算符没有报错(2)对于“(2)”这种无法运算(3)暂时没有加入小数,基于整型运算-----------------------------------------------------------------其实每次看到栈的章节的时候都会拿四则运算做例子,这个确实是个很具体的例子,其实递归也是一种栈的实现,不过是编译器帮我们

2013-11-13 21:51:56 2178

转载 相似图片搜索

转自:http://xuhehuan.com/219.html相似图片搜索的原理简析时间: 2011-10-14 / 分类: 业界动态, 图像处理 / 浏览: 985 / 0个评论 发表评论2010年6月份,谷歌图片的搜索框旁边放置了一个小照相机的按钮,标志着以图搜图的全新图片检索功能开始启用,8月份,搜狗图片搜索也具备了以图搜图的功能,12月,百度正式上线图片搜索

2013-11-13 21:19:55 2516

原创 搜索引擎入门(三)

申明:我也是刚开始学习搜索引擎,如果有不妥指出望指出,此系列博文只是记录我学习的历程罢了,不喜勿喷。Author:元子*********************************************************************继续上一章,说了这么多,今天就简单实现下程序中网页抓取的过程。Crawler_v1首先需要:apache

2013-11-11 19:42:39 911

原创 java之BerkeleyDB(二)--绑定(Binding)技术、游标(Cursor)

继续上篇《java之BerkeleyDB(一)》上篇我们先直接看了个例子:有几个注意的,在BDB数据库里,默认是不能有重复的两个相同的键,当然可以通过config配置sortedDupli...来设置可以,所以在读取数据库值的时候必须考虑两种情况,是否存在相同的键的记录JE provides two basic mechanisms for the storage and retr

2013-11-11 15:22:15 2715

原创 算法习题59,60:不能被继承的类,O(1)时间复杂度删除链表节点

(1).不能被继承的类。题目:用 C++设计一个不能被继承的类。分析:这是 Adobe 公司 2007 年校园招聘的最新笔试题。这道题除了考察应聘者的 C++基本功底外,还能考察反应能力,是一道很好的题目。(2).在 O(1)时间内删除链表结点。题目:给定链表的头指针和一个结点指针,在 O(1)时间删除该结点。链表结点的定义如下:struct ListNode{

2013-11-11 11:18:17 967

原创 算法习题57:用两个栈实现队列

用俩个栈实现队列。题目:某队列的声明如下:template class CQueue{17public:CQueue() {}~CQueue() {}void appendTail(const T& node);void deleteHead();// append a element to tail// remove a element from he

2013-11-10 11:09:36 701

原创 Java之BerkeleyDB(一)

由于最近在学习SE方面的知识,刚开始就遇到了一个很大的问题,数据存储问题?随着Crawler抓取的网页越多,我们之前使用Java子带的ArrayList或者HashMap都不够存储,而且速度上也不能够很好满足我们的需要,所以这里推荐使用BerkerleyDB这种基于内存的小型数据库,它是嵌入式数据库,指的是嵌入在应用程序的数据库。上Oracle官网可以下载到该库。注意:加入li

2013-11-10 02:55:26 941

原创 Java之PriorityQueue

在进行队列操作的时候,一般我们采用的是先进先出的队列模式但是在某些特定场合我们可能希望这个队列里先让优先级高的元素出来,然后再让优先级低的元素出来,这里就需要用到Java5新增加的优先队列 数据结构这个数据结构会自动按照排序加入元素,例如元素大小或字典顺序,但是如果加入我们的类,比较大小需要我们实现Comparator这个比较器所以下面这个例子的主要部分:PriorityQueue

2013-11-09 17:57:33 800

原创 搜索引擎入门(二)

申明:我也是刚开始学习搜索引擎,如果有不妥指出望指出,此系列博文只是记录我学习的历程罢了,不喜勿喷。Author:元子*********************************************************************搜索引擎一般可以分为四个系统:(1)下载系统    就是我们平时所说的爬虫,Crawler.    在Windows下,

2013-11-09 17:09:36 821

原创 算法实战4:逃跑问题Escape

问题大致描述:有个小偷想要抢银行,可是他希望我们帮助他设计逃跑路线逃跑过程中有如下规则:(1)经过的路口不能再次走(2)每次路口只能选择直行或者右转问:有多少条路可以让小偷顺利回家假设地图如下,网格状假设小偷从(0,0)(左下角)开始逃跑,地图右上角(X,Y)是地图边界 ,(x,y)则是小偷的家输入:33 4 0 03 4 1 1 3 4 1

2013-11-09 15:13:31 1945

原创 搜索引擎入门(一)

郑重申明:本系列文章是学术性文章,请认真对待!如果你面带微笑看完,请重新认真阅读!作者:ylfDSB-元---------------------------------from now on,开始小小研究下搜索引擎这个让我感到可怕的喜爱的领域,因为这里的算法可以说是现在最先进的,而且这里提供的服务是最一流 的,也是Google百度这些公司让我着迷膜拜。。。忽略我的无知。。。当然还有一

2013-11-08 15:26:50 1116

原创 算法习题54:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分

调整数组顺序使奇数位于偶数前面。题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。----------------------------------------------------------------这道题难度不是很大,同样利用两个指针分别从头尾开始遍历到中间相遇即可。其实这题就

2013-11-08 13:15:44 2196

原创 算法习题53:字符串全排列问题

来自:http://bbs.csdn.net/topics/350118968字符串的排列。题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。分析:这是一道很好的考查对递归理解的编程题,因此在过去一年中频繁出现在各大公司的面试、笔试题中。-------

2013-11-08 12:50:29 947

原创 算法习题51:输入一个正数n,输出所有和为n连续正数序列

和为n连续正数序列。题目:输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。分析:这是网易的一道面试题。--------------------------------------解法一:既然是连续的,我们当然可以借助两个游标,分别记住起始点和终止点,另一个变量记录和sum

2013-11-08 11:57:34 2388 3

原创 算法习题49:如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)

如何对n个数进行排序,要求时间复杂度O(n),空间复杂度O(1)------------------------------------------熟悉排序算法的人知道,目前比较好的排序算法就是快排堆排序归并等等,这些算法也只能让时间复杂度在O(NlogN)但是这道题却想让时间复杂度达到O(N)这个真心要想破我的头了。。刚开始思路是,可以不可以用哈希来排序,因为这个家伙太好用了,就

2013-11-07 13:07:51 5998

原创 算法实战3:最长公共子序列

在很多实际应用中,经常需要比较两个序列的相似性,例如DNA,或者文档的查重,但是往往这些序列相同部分不一定是相连,中间可能存在一些干扰元素,这就需要找出这种最长的公共子序列。序列:X=  Y=这两个序列最长的公共子序列(Longest Common Subsequence)是Z=  Z=如何用程序找出来呢?-----------------这道题是一个很经典的动态规划的题目,所

2013-11-07 11:28:17 1232 2

原创 算法习题48:一个数组是由一个递减数列左移若干位形成的,在这种数组中查找某一个数。

微软:一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5}是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数。 ----------------------------------------一般情况下,数组的查找都是建立在排序的基础上的,怎样的排序就决定来怎样的查找能够最快。例如二叉树查找,哈希查找等。这里的数组也是属于有序数组,所

2013-11-07 09:49:46 1529

转载 AdaBoost概要

转自:http://shijuanfeng.blogbus.com/logs/100675208.html(方便自己手机上看,就转来哈)Ø  要明确Adaboost是一种算法。Ø  介绍一下Adaboost的历史。 Adaboost的前身的Boosting算法。Boosting是一种提高任意给定学习算法准确度的方法。它的思想起源于Valiant提出的PAC(Probab

2013-11-06 21:52:51 1102

原创 算法习题47:求一个数组的最长递减子序列 比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2}

创新工场:求一个数组的最长递减子序列 比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2}------------------------------------------------------http://blog.csdn.net/wumuzi520/article/details/7378306这题参见上面这篇博客的动态规划的方法,可以迅速解

2013-11-06 17:26:33 1754

原创 算法习题46:四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(())

来自:http://bbs.csdn.net/topics/350118968搜狐:四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(())---------------------------------------------这题直接用栈的思想就可以了,刚开始我还想直接用全排列的方法来解决,发现问题变得更加复杂了,因为重复问题不好解决,所以这里还是利用递

2013-11-06 13:23:16 4638 1

原创 算法习题45:对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相邻(上下左右)某一个元素也加一;;;一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值

.雅虎:1.对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相邻(上下左右)某一个元素也加一,现给出一正数矩阵,判断其是否能够由一个全零矩阵经过上述运算得到。2.一个整数数组,长度为n,将其分为m份,使各份的和相等,求m的最大值  比如{3,2,4,3,6} 可以分成{3,2,4,3,6} m=1;   {3,6}{2,4,3} m=2  {3,3}{2,4}

2013-11-05 14:18:31 1826

原创 算法习题43:递归和非递归实现二叉树的前序遍历

.递归和非递归俩种方法实现二叉树的前序遍历。------------------------------------------------递归的替换我们很容易就想到,肯定是借助循环,可是我们这里递归二叉树的时候其实是借助编译器内部的栈来实现存储打印的,从而具有记忆功能,而现在如果只用循环,这种记忆功能将不存在,所以我们需要利用一个辅助队列来实现那么这个过程就简单多了,比如下面一棵

2013-11-04 13:49:13 858

原创 算法习题42:修改append函数,求链表并集

请修改append函数,利用这个函数实现:两个非降序链表的并集,1->2->3 和 2->3->5 并为 1->2->3->5另外只能输出结果,不能修改两个链表的数据。---------------------------------------------------------------首先需要找出两个集合相交的部分,并且头尾相交,可是这里是链表结构,我们无法从后面往前找,想

2013-11-04 12:49:08 951

原创 算法习题40:设计最小栈,首尾相连珠子问题,系统设计问题

.百度研发笔试题引用自:zp1553348771)设计一个栈结构,满足一下条件:min,push,pop操作的时间复杂度为O(1)。2)一串首尾相连的珠子(m个),有N种颜色(N设计一个算法,取出其中一段,要求包含所有N中颜色,并使长度最短。并分析时间复杂度与空间复杂度。3)设计一个系统处理词语搭配问题,比如说 中国 和人民可以搭配,则中国人民 人民中国都有效。

2013-11-01 15:43:28 1102

原创 算法习题39:二叉树节点距离

网易有道笔试:(1).求一个二叉树中任意两个节点间的最大距离,两个节点的距离的定义是 这两个节点间边的个数,比如某个孩子节点和父节点间的距离是1,和相邻兄弟节点间的距离是2,优化时间空间复杂度。(2).求一个有向连通图的割点,割点的定义是,如果除去此节点和与其相关的边,有向图不再连通,描述算法。----------------------------------

2013-11-01 14:56:43 812

java版微信打飞机

java版的微信打飞机。对于初学Java的还是听有帮助的,里面用了Java简单的图形编程,以及一些接口和抽象类的使用,简单用了下装饰者模式和生产者模式,当然代码还是有很多重用厉害的地方,这也是以后需要不断改进的,大家可以拿去再精简改进哈 代码量不大 适合初学 逻辑也不难

2014-01-21

空空如也

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

TA关注的人

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