自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

冰枫的随笔

石梯砺步,木棉情长

  • 博客(173)
  • 资源 (9)
  • 收藏
  • 关注

原创 博客迁移公告

感谢大家对本博客的关注,现已迁移到个人博客网站,地址:https://www.cyningsun.com

2020-01-28 23:16:59 302

转载 struts2与struts2-spring-plugin的整合

原文名称:使用 struts2的 builder alias 机制加载objectFactory以下代码基于 struts2 版本2.1.8.1 版本分析。在使用 Struts2的过程中,我们都喜欢使用 struts2 的spring 插件来让 spring 作为struts2 的默认对象容器,原理就在于在加载 struts2 之前先加载 spring容器,然后将 spring 容器加

2013-11-09 16:12:43 1927

原创 struts2核心流程源码分析

Struts2的初始化StrutsPrepareAndExecuteFilter属性摘要protected  ListexcludedPatternsprotected  ExecuteOperationsexecuteprotected  PrepareOperationsprepare

2013-09-22 19:47:12 1925 1

原创 C++限定符总结

概念:连接:在一个执行程序中,标识符代表存放变量或者被编译过的函数体的存储空间。连接用链接器所见的方式描述存储空间。连接的方式有两种,内部链接和外部链接:内部链接意味着只对正被编译的文件创建存储空间。用内部链接,别的文件可以使用相同的标识符或全局变量,链接器不会发现冲突——也就是为每一个标识符创建单独的存储空间。在C和C++众内部链接由关键字static指定。外部链接意味着为所有被编译

2013-05-27 11:47:18 2979

原创 Linux快速目录切换

快速目录切换使用到的是成为目录栈的东东,通过三个命令实现。pushd目录入栈与切换、dirs查看栈中内容、popd栈中目录出栈。1、pushd命令pushd命令执行,会在内存中维持一张目录列表,便于随时切换列表内目录pushd命令是切换到上一次访问的目录,同时调整目录记录列表的顺序(pushd命令的实际作用和“cd -”的命令相类似)pushd [-n] [

2013-05-26 16:28:21 3020

原创 shell条件测试

写脚本时,有时要判断字符串是否相等,可能还要检查文件状态或是数字测试。基于这些测试才能做进一步动作。1、文件测试测试文件状态的操作符如下:-d 目录    -s 文件长度大于0、非空-f 正规文件 -w 可写-L 符号连接 -u 文件有suid位设置-r 可读    -x 可执行测试时使用逻辑操作符测试文件状态是否为OK,但是有时要比较两个文件状

2013-05-25 20:29:08 1651

转载 shell基础第十五篇-引号

引用必要性这里只讲述引用的基本规则。因为使用引用的例子很多。本书接下来的两个部分将一一予以讲述。脚本中执行行操作时, shell将对脚本设置予以解释。要采取一种方法防止shell这样做,即使用引用号,包括各式引用或使用反斜线。一些用户在对文本字符串进行反馈操作时觉得使用引用很麻烦。有时不注意,只引用了一半,这时问题出现了。最好在反馈文本字符串时使用双引号。下面是各种引用的例子。

2013-05-25 14:14:01 1524

原创 Linux基本命令之grep

1. Grep含义:grep是由 g/RE/p 拼起来的,其中g为global的意思,RE为regular expression的简写,p为print的意思;即grep的意思为“全局搜索正则表达式并打印该行”(grep名称起源于ex编辑器)。grep的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送

2013-05-25 13:51:14 1859

原创 SHELL十三问要点总结

1、shell 会依据 IFS(Internal Field Seperator) 将 command line 所输入的文字给拆解为"字段"(word)。然后再针对特殊字符(meta)先作处理,最后再重组整行 command line。其中的 IFS 是 shell 预设使用的字段分隔符,可以由一个及多个如下按键组成: * 空格键(White Space) * 表格键(Tab)

2013-05-09 12:17:16 1615

转载 memcached-items操作

今天主要总结items相关的操作,items的操作分布比较多,定义和实现在memcachd.h/c、thread.h/c、items.h/c都有,感觉完全可以放在items.h/c中。这里就对所有的这些操作(除去stats部分)进行一个简单的总结。        首先对数据结构、ITEM_*宏和一些变量进行一个简单的说明,这里先建立一个宏观的概念,理解了它们的用途对后续阅读程序有很大的帮助

2013-04-10 13:23:59 2276

转载 memcached-多线程模型

本来计划研究memcached的多线程模型,后来发现网上博文《Memcached源码分析(线程模型)》写的非常好,因此,也省去了我的大部分时间,这里并不打算自己再重新总结。        不过首先奉上我自己画的一张图,就称为memcached多线程交互的活动图吧,通过此图就基本掌握了main thread与单个worker thread的交互过程,图中序号表示基本的处理流程(图中drive

2013-04-10 13:22:20 3678

转载 memcached-hashtable

今天来介绍memcached中hashtable部分的源码,hash部分的源码主要分布在assoc.h/c、hash.h/c中,总得来说代码比较简单,这里就稍微介绍一下。         hashtable通常包括哈希函数和解决冲突的方法两个最主要的因素,memcached使用的哈希函数为Bob Jenkins在1996年发明的,定义位于hash.h中,实现在hash.c中,作者与2006

2013-04-10 13:19:13 1498

转载 memcached-内存管理机制slab allocator

前端时间大致浏览了一下memcached的源码,但是并没有对相关的知识点进行总结和记录,所以很快就忘了,这次打算将memcached的源码再学习一遍,并进行总结归纳。    memcached模块化设计比较好,每个模块除了对外接口定义在头文件外,其它函数定义及实现都在源文件中,且定义为static类型,这样很好的降低了模块之间的耦合性。下面,浏览源码将按照功能模块进行划分,逐步学习总结。

2013-04-10 13:17:34 3840 2

转载 Memcached 结构分析

Memcached 结构分析     Memcached是一个分布式的内存缓存库,正好自己想写个cache的模块,那么就偷偷师吧。     功能库看的是实现原理和思路,性能库看的是实现细节,memcahed是属于一个看性能的库(实现cache功能的模块很多,但是性能就有高低了) 1、memcached的数据交互协议    memcached是分布式的内存缓存服务器,它是通过

2013-04-10 13:15:04 1993

翻译 概率估计(极大似然估计、拉普拉斯平滑定理、M-估计的关系)

英文原文链接:http://www.temida.si/~bojan/probability_estimation.php原文:Probability estimation1 IntroductionLet us assume that in an experiment we have conducted n independent trials, of which there

2013-04-06 22:55:39 12593

原创 mallet源码分析之bagging与boosting

转载请注明原载地址:http://blog.csdn.net/xinhanggebuguake/article/details/8743185      把mallet中Bagging算法与Boosting放在一起,其一是因为两者都是很著名的集成学习算法,并且有很大的相似性,对比着分析能加深对两者的理解;其二两者的实现确实很简单。算法Bagging算法:For t = 1, 2

2013-03-31 15:58:10 3656

转载 熵,信息增益,信息增益率,Gini

话说今天《机器学习》上课被很深地打击了,标名为“数据挖掘”专业的我居然连个信息增益的例子都没能算正确。唉,自看书以来,这个地方就一直没有去推算过,每每看到决策树时看完Entropy就直接跳过后面增益计算了。因而,总想找个时间再回过来好好看一下,这不,被逼上了呢。神奇的墨菲定律呢:你担心它发生的,它就一定会发生。回正题了,这三个指标均是决策树用来划分属性的时候用到的,其中信息增益(Info

2013-03-29 10:15:09 15203

原创 mallet源码分析之决策树C4.5

本来在此之前还应该有一篇介绍mallet中贝叶斯实现的文章。鉴于已经写过mahout下贝叶斯的博客,算法过程已经十分完整,所以直接进入决策树算法的部分。以cc.mallet.classify.examples包下的DocumentClassifier为驱动来介绍C4.5算法。由于知识浅薄,疏漏错误之处在所难免,所以恳请各位能不吝赐教。文本预处理DocumentClassifier

2013-03-27 22:33:19 3055 1

原创 libSVM源码分析

转载请注明原载地址:http://blog.csdn.net/xinhanggebuguake/article/details/8705648  在此之前,上海交大模式分析与机器智能实验室对2.6版本的svm.cpp做了部分注解,《LibSVM学习(四)——逐步深入LibSVM》也介绍了libSVM的思路,很精彩。而我写这篇博客更侧重与理解算法流程与具体代码的结合点。(环境:LibSVM2

2013-03-22 13:10:44 7928 11

转载 SMO算法

SMO算法由Microsoft Research的John C. Platt在1998年提出,并成为最快的二次规划优化算法,特别针对线性SVM和数据稀疏时性能更优。关于SMO最好的资料就是他本人写的《Sequential Minimal Optimization A Fast Algorithm for Training Support Vector Machines》了。我拜读了一下,下

2013-03-22 12:31:48 3182

原创 mahout源码分析之贝叶斯算法

整个流程包括数据处理部分和分类算法部分。数据处理部分对语料库进行处理生成算法能执行的标准格式。分类算法部分的实现被分作三个部分:训练器(The Trainer)、数据模型(The Model)、分类器(The Classifier)。数据预处理PrepareTwentyNewsgroupsfor(dir in categoryDirectorys)BayesFileFormat

2013-03-16 00:11:14 4133 1

原创 贝叶斯方法的m-估计

为什么要有m-估计?当我们通过在全部事件的基础上观察某事件出现的比例来估计概率时,例如:P=nc/n.,其中nc为该类别中的样本数量,n为总样本数量。若n=5,当P=0.6时,则nc为3。多数情况下该比例是对概率的一个良好的估计。但当nc很小时估计会较差,例如:P=0.08,样本中同样有5个样例,那么对于nc最可能的取值只有0,。这会导致两个问题:1、nc/n产生了一个有偏的过低估计概率。

2013-03-14 10:46:13 13137 1

原创 文本分类的阈值策略

位置截尾法, rank-based thresholdRCut:将文本指定给前t个类别。参数t即可以由用户指定,也可以通过预定初始值,然后给出测试文本,使用分类器进行分类,再根据分类的准确程度调整初始值。优点:考虑了分类器的全局性能比例截尾法, proportion-based thresholdPCut:将所有测试文本与某一类别的相似度按照由高到低的顺序排序,然后将前kj

2013-03-07 16:25:11 3391

原创 提高办公工作效率的Linux命令行秘诀

提高办公工作效率的命令行秘诀1、查看命令的使用频率 $ history|awk '{print $2}'|awk 'BEGIN {FS="|"} {print $1}'|sort|uniq -c|sort -r      4 ls      2 cd      1 who应用:定期查看history文件内使用频率高的命令,然后设置histor

2013-03-03 17:04:11 1541

原创 VIM编码

在 Linux 上,常见的情况是环境的内部编码使用 UTF-8 ,而 UTF-8 可以同任何一种语言编码作无损转换,这就保证了系统的多语言处理能力。Vim 这方面秉承了 Unix/Linux 的传统,在内部编码使 UTF-8 的时候,可以同时处理不同意语言编码的文件。以下列出了和语言编码的相关的设置:环境变量 LANG(所有语言变量的默认值);环境变量 LC_CTYPE(使用的内部

2013-03-01 23:29:35 1229

转载 locale的设定及LANG、LC_CTYPE、LC_ALL环境变量

转自:http://blog.chinaunix.net/uid-26760055-id-3222699.htmllocale这个单词中文翻译成地区或者地域,其实这个单词包含的意义要宽泛很多。Locale是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的一个软件运行时的语言环境。[oracle@game ~]$ localeLANG=en_US.UTF-

2013-03-01 22:47:38 2129

原创 VIM全配置

安装中文帮助文档1、文档获取wget http://sourceforge.net/projects/vimcdoc/files/vimcdoc/1.8.0/vimcdoc-1.8.0.tar.gz2、解压tar -zxvf vimcdoc-1.8.0.tar.gz 3、安装cd vimcdoc-1.8.0/(查看安装说明 cat INSTALL )sh vimcd

2013-03-01 14:31:01 1397

原创 Linux基本命令之awk

重要概念记录(Records):记录默认以换行符为分割符,可以设置RS变量来更改分隔符,RS可以是单个字符也可以是字符串,当RS为空时,以空行分割。域(Fields):每当一个记录被读取,awk使用FS变量作为分隔符将记录分割成域。FS可以是单个字符也可以是字符串,当FS为空时,每个字符为一个域。每个域的值可以通过它的位置$1、$2...引用,$0表示整个记录。输出命令:print用于

2013-01-03 13:43:03 1061

转载 《SED 单行脚本快速参考》的 awk 实现

{ 撰文/bones7456 }sed 和 awk 都是 Linux 下常用的流编辑器,他们各有各的特色,本文并不是要做什么对比,而是权当好玩,把《SED 单行脚本快速参考》这文章,用 awk 做了一遍~ 至于孰好孰坏,那真是很难评论了。一般来说,sed 的命令会更短小一些,同时也更难读懂;而 awk 稍微长点,但是 if、while 这样的,逻辑性比较强,更加像“程序”。到底喜欢用哪

2013-01-03 13:31:41 1216

原创 Linux基本命令之重定向

文件标识符是从0开始到9结束的整数,指明了与进程相关的特定数据流的源。默认情况下始终有3个“文件描述符”处于打开状态,0、1、2分别为stdin、stdout、stderr。重定向描述符有以下用法:  : >filename 把文件filename截断为0长度;如果文件不存在则创建长度为0的文件。  command 1 > fielname 把标准输出重定向到文件fielname

2012-12-31 23:32:09 1472

原创 Linux基本命令之sort

sort命令将每一行文本视为多个域,缺省情况下,域之间以一个空格或一系列空格为分隔符,另外分割符可以通过-t选项指定。从左到右以字符的ASCII码值(不是数值哦!)排序。1、去除重复:去除文件中相同的行       sort -u filename2、 逆序排序       sort –r filename3、使用k选项分类    命令的格式为:    sort -k

2012-12-31 00:59:40 1081

转载 正则表达式30分钟入门教程

本文目标30分钟内让你明白正则表达式是什么,并对它有一些基本的了解,让你可以在自己的程序或网页里使用它。如何使用本教程最重要的是——请给我30分钟,如果你没有使用正则表达式的经验,请不要试图在30秒内入门——除非你是超人 :)别被下面那些复杂的表达式吓倒,只要跟着我一步一步来,你会发现正则表达式其实并没有你想像中的那么困难。当然,如果你看完了这篇教程之后,发现自己明

2012-12-20 22:14:46 700

原创 《鸟哥的linux私房菜》笔记之例行性工作排程(crontab/at)

crontab的启动和停止cron服务是linux的内置服务,但它不会开机自动启动。可以用以下命令启动和停止服务:/sbin/service crond start    //启动/sbin/service crond stop     //停止/sbin/service crond restart  //重启/sbin/service crond reload

2012-12-18 23:25:51 1088

原创 《鸟哥的linux私房菜》笔记之Linux账号管理

若干概念1、初始群组(initial group) :当用户一登入系统,立刻就拥有这个群组的相关权限。2、有效群组(effective group):当用户创建文件或者目录时权限归属的群组。3、支持群组:使用groups命令得到的就是该用户拥有的所有的群组的权限,输出的第一个群组是当前的有效群组4、系统账号:主要是用来进行运作系统所需朋务的权限设定,所以系统账号默认都不会主动建立主

2012-12-16 00:04:13 1265

原创 问答学习《深度探索C++对象模型》系列

经过数次翻看《深度探索C++对象模型》和翻看别人的笔记,还是决定自己动手写一下该本书的笔记。笔记采用问答的方式是因为在UC实习时我的指导老师的影响:你不要为了看书而看书,你要从中学到东西就要带着疑问去学习。于是有了这一系列的笔记,感谢我的指导老师让我明白:生命不息,学习不止。第一章:《深度探索C++对象模型》读书笔记之关于对象第二章:《深度探索C++对象模型》读书笔记之构造函数语意学第

2012-11-17 18:50:57 1050

原创 《深度探索C++对象模型》读书笔记之执行期语意学

1、 如何查看objectfiles中定义的函数和全局变量?好吧,其实这个问题确实与执行期语意学有关。因为编译器需要收集每个全局变量的构造和析构函数,而其实现方式也是使用nm命令打印object file的符号表找出特定开头的名称。所以咯,答案是nm命令。(腾讯面试中,我曾遇到这个,当时没答出来T_T) 2、 operator new()、placement new

2012-11-17 18:35:47 1167

原创 《深度探索C++对象模型》读书笔记之构造、析构、拷贝语意学

1、 继承体系下的对象构造过程是怎样的?1>    调用所有的虚基类构造函数,从左到右,由最深到最浅(别忘记虚基类在对象模型中是以独特的方式支持的,不涉及到在对象模型中的偏移量的问题)2>    调用所有的上一层的基类构造函数,以基类的声明顺序为顺序(这是因为一般基类的subobject都会被放在object的开始,并且按基类声明的次序放置)3>    如果class

2012-11-17 18:33:08 1398

原创 《深度探索C++对象模型》读书笔记之Function语意学

C++支持三种类型的成员函数:static、nonstatic、virtual 1、C++的设计准则中说:非静态成员函数至少必须和一般的非成员函数有相同的效率。这是如何做到的?C++中的member function实际上被转化为nonmember的形式。下面是转化的步骤:1>    改写函数的原型,安插一个额外的参数(this指针)到member functi

2012-11-17 18:29:09 1180

原创 《深度探索C++对象模型》读书笔记之构造函数语意学

1、 一个类是不是一定有构造函数? C++ Annotated ReferenceManual(ARM):构造函数只在需要的时候才会被编译器产生出来。关键字“在需要的时候”,被谁需要?一种是程序需要的时候,一种是变编译器需要的时候。如果程序有需要(如,完成某些非静态数据成员的初始化),那是程序员的责任,程序员需要自己提供构造函数。如果是编译器需要则才会合成出来默认构造函数。编译器不会替

2012-11-17 18:27:10 1202

原创 《深度探索C++对象模型》读书笔记之Data语意学

1、 Data member的布局是怎样的?非静态数据成员1>    在同一个Access Section(也就是private,public,protected等区段)中,较晚出现的数据成员在classobject中有较高的地址。2>    允许编译器将同一类型的多个Acess Section的顺序自由排列,而不必在乎它们的声明次序(但似乎没有编译器这样做)。

2012-11-17 18:23:08 1208

我的VIM配置

我的VIM配置

2013-03-01

taglist4.5

资源为taglist插件,由于英文网站难以访问,特下载至此

2013-03-01

用匈牙利算法求二分图的最大匹配

简单的一个求最大匹配的案例,制作成为了PPT以利于对算法的理解

2011-08-08

一款简单的桌面便笺仅供学习交流

本资源为作者利用假期写的一款简单的桌面便笺。便笺提供一些实用的功能。开发便笺的目的仅为学习交流,作者欢迎大家的建议与意见.平台:VS2008 主窗口: 1、在整体界面上同样使用半透明效果,使用的函数为SetLayeredWindowAttributes,255单位的透明程度我取了100到250的部分。文字显示为Edit,使用重载,使用了位图背景减小透明带来的难以看清楚的不良效果,突出文字。在ColorCtrl中修改了文字颜色,目的同上。 2、界面色彩提供右击变幻,提供6种颜色更换。Edit中提供双击修改,右击保存,背景提供5种主色的图片更换,文字提供七色更换 3、提供取消、设置置顶(SetWindowPos),不可移动(PreTranslateMessage中实现)、提供无标题栏移动(OnLButtonDown中实现) 4、各按钮以PNG图片代替,感应显示、消息响应(OnMouseMove中实现) 主窗口界面元素:对话框一个、编辑框一个、PNG图片5张

2010-10-07

LibGeoTiff(处理tiff文件的开源库)

LibGeotiff函数库,众所周知是处理TIFF图像的首选函数库.其和LibTiff函数库就像搭档一样,提供了简单简便的函数操作,为处理转化压缩TIFF格式文件的用户提供了极大地便利

2010-07-24

tiff3.8.2(Tiff图像处理库最新版)

Libtiff函数库,众所周知是处理TIFF图像的首选函数库,它提供的简单简便的函数操作,为处理转化压缩TIFF格式文件的用户提供了极大地便利

2010-07-24

C++编程思想的源代码

众所周知,c++编程思想(Thinking in C++)是很不错的一本书,附带的源码,分享了

2010-06-24

C语言实例解析精粹源代码

C语言实例解析精粹源代码,为第二版的书,分享了

2010-06-24

C++良好的编程风格

这是林锐博士写的一本书,主要是关于怎样的养成良好的书写代码的习惯,怎样的更好的编程的一本书,一个程序员一种风格,但每一种风格都需要的得到团队的认可,这样的风格才是良好的编程风格(PDF格式)

2010-05-12

空空如也

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

TA关注的人

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