- 博客(151)
- 收藏
- 关注
原创 SkipList 跳表
为什么选择跳表目前经常使用的平衡数据结构有:B树,红黑树,AVL树,Splay Tree, Treep等。 想象一下,给你一张草稿纸,一只笔,一个编辑器,你能立即实现一颗红黑树,或者AVL树出来吗? 很难吧,这需要时间,要考虑很多细节,要参考一堆算法与数据结构之类的树,还要参考网上的代码,相当麻烦。 用跳表吧,跳表是一种随机化的数据结构,目前开源软件 Redis 和 ...
2015-03-24 14:44:59
261
原创 c++引用计数的本质
为什么要用引用计数? 场景:代码里X是一个非常重要的资源,模块A,B,C都有对其指针的引用,那么为了不出现内存泄露,常规的代码我们要怎么写? 1. A 模块用完X时,需要检查B,C是否还在引用X,如果B,C有一个在用,那么X只要删除掉对A的引用就可以了, 如果B,C对A都已经没有引用了,那么A需要删除对X的引...
2015-03-24 14:26:23
373
原创 Java Decompiler project,java反编译器
The “Java Decompiler project” aims to develop tools in order to decompile and analyze Java 5 “byte code” and the later versions.JD-Core is a library that reconstructs Java source code from one or ...
2015-03-09 10:39:33
263
原创 reduce() 和 findContours()的使用陷阱
之前学习OpenCV时是从于老师的书本教材开始的,所以一直使用的接串口就全是其于C的,但越使用越觉得C接口不其方便,再者使用C++应当是大的趋势所向,所以,又只好对相应的C++接口进行学习和使用,真心烦燥! 浪费了一些时间不说,关键是c++接口中的一些函数的使用和要求,与C的有些出入,按之前C的方法去使用,有时会出些莫名的问题,解决起来老费劲! 之前的笔记也记,...
2015-01-31 23:42:06
250
原创 MFC程序中打印调试信息
1、在要打印调试的类中加上头文件 #include <io.h>//Rain 用来输出调试信息#include <fcntl.h>//Rain 2、加入一个方法 void InitConsoleWindow()//Rain {int nCrt = 0;FILE* fp;AllocConsole();nCrt = _open...
2015-01-20 22:11:00
172
原创 召回率与准确率
最近一直在做相关推荐方面的研究与应用工作,召回率与准确率这两个概念偶尔会遇到,知道意思,但是有时候要很清晰地向同学介绍则有点转不过弯来。召回率和准确率是数据挖掘中预测、互联网中的搜索引擎等经常涉及的两个概念和指标。召回率:Recall,又称“查全率”——还是查全率好记,也更能体现其实质意义。准确率:Precision,又称“精度”、“正确率”。以检索为例,可以把搜索情况用下图表示: ...
2015-01-12 14:21:55
308
原创 opencv轮廓提取与轮廓拟合
#include <iostream>#include <vector>#include <opencv2/core/core.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <opencv2/highgui/highgui.hpp>using namesp...
2015-01-05 09:55:45
1835
原创 PHP获取当前类名、函数名、方法名
PHP获取当前类名、方法名__CLASS__ 获取当前类名__FUNCTION__ 当前函数名(confirm)__METHOD__ 当前方法名 (bankcard::confirm) __FUNCTION__ 函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中...
2014-12-15 12:43:47
385
原创 HTTP返回码中301与302的区别
支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本 、非线性及高维模式识别 中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小 原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错...
2014-12-12 18:58:04
213
原创 MySQL大数据量分页SQL语句优化
分页程序原理很简单,这里就不多说了,本篇文章主要说的是在数据表记录量比较大的情况下,如何将分页SQL做到更优化,让MySQL执行的更快的方法。一般的情况下,我们的分页SQL语句是这样的:查看代码 打印1SELECT * FROM table ORDER BY id LIMIT 1000,10;以上SQL语句在原理上和在实际...
2014-12-11 18:36:43
197
原创 Linux下select, poll和epoll IO模型的详解
一).Epoll 介绍Epoll 可是当前在 Linux 下开发大规模并发网络程序的热门人选, Epoll 在 Linux2.6 内核中正式引入,和 select 相似,其实都 I/O 多路复用技术而已 ,并没有什么神秘的。其实在 Linux 下设计并发网络程序,向来不缺少方法,比如典型的 Apache 模型( Process Per Connection ,简称 PPC ), TPC ( ...
2014-12-06 22:00:47
149
c语言操作二进制文件fopen中fseek的注意事项
今天在使用fopen的时候,遇到了fseek(fp,0,SEEK_END); 然后想在文件的头部修改信息,但是无论如何都无法修改,而只会在文件的最后append,最后发现了问题如下: FILE *fp = fopen(_db_file,"ab+); 的文件用ab+方式打开,a的意思就是追加,声明原内容不会变化。如果要修改原有内容,应该以rb+方式打开,这种方式,也...
2014-11-22 01:04:41
1079
1
原创 C++中delete和delete[]的区别
一直对C++中的delete和delete[]的区别不甚了解,今天遇到了,上网查了一下,得出了结论。做个备份,以免丢失。 C++告诉我们在回收用 new 分配的单个对象的内存空间的时候用 delete,回收用 new[] 分配的一组对象的内存空间的时候用 delete[]。 关于 new[] 和 delete[],其中又分为两种情况:(1) 为基本数据类型分配和回收空间;(2) 为...
2014-11-21 23:41:27
134
原创 MySQL性能优化点
1. 为查询缓存优化你的 sql query大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查...
2014-11-18 14:38:52
227
原创 五分钟理解一致性哈希算法(consistent hashing)
一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。 一致性hash算法提出了在动态变化的Cache环境中,判定哈希算法好坏的四个定义: ...
2014-11-16 18:51:53
122
原创 PHP按字符串长度分割成数组,支持中文
/** * 将unicode字符串按传入长度分割成数组 * @param string $str 传入字符串 * @param integer $l 字符串长度 * @return mixed 数组或false */ function str_split_unicode($str, $l = 0) { if ($l > 0) {...
2014-11-13 15:08:27
934
原创 file_get_contents 增加超时的时间限制
在使用file_get_contents函数的时候,经常会出现超时的情况,在这里要通过查看一下错误提示,看看是哪种错误,比较常见的是读取超时,这种情况大家可以通过一些方法来尽量的避免或者解决。这里就简单介绍两种:一、增加超时的时间限制这里需要注意:set_time_limit只是设置 你的PHP程序的超时时间,而不是file_get_contents函数读取URL的超时时间。 我一开...
2014-10-10 11:46:09
282
原创 缺少streams.h的解决方法
这几天在学DirectShow的开发,一个streams.h头文件折腾了好几天才搞定。简单总结一下出现缺少streams.h的解决方法和DirectShow开发环境的搭建。开发包方面,我用的是Microsoft DirectX 9.0 SDK。streams.h这个头文件现在在%\DX9 SDK\Samples\C++\DirectShow\BaseClasses路径下,首先要把这个路...
2014-10-09 17:19:18
2773
1
原创 PHP执行cmd命令
本文介绍下,在php代码中执行cmd命令的方法,介绍下在php.ini文件中配置safe_mode参数支持命令执行的方法,有需要的朋友参考下。 说明:本节内容在wamp包安装的环境实现。 首先,打开php.ini,关掉安全模式safe_mode = off,然后在看看 禁用函数列表 disable_functions = proc_open, popen, exec, sy...
2014-09-26 10:40:16
440
原创 xampp1.74 apache不能正常运行的解决办法
升级到xampp1.74以后,apache不能正常运行,点击以后总是提示busy,查看log有如下提示:[Fri Jul 22 15:18:38 2011] [notice] Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming...
2014-09-25 17:56:16
156
原创 基于OpenCV的PHP图像人脸识别技术
openCV是一个开源的用C/C++开发的计算机图形图像库,非常强大,研究资料很齐全。本文重点是介绍如何使用php来调用其中的局部的功能。人脸侦查技术只是openCV一个应用分支。 1.安装 从源代码编译成一个动态的so文件。 1.1.安装 OpenCV (OpenCV 1.0.0) 下载地址:http://sourceforge.net/projec...
2014-08-26 20:46:02
350
原创 C#如何以管理员身份运行程序
在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误。 比如在通过winform程序执行cmd命令时,某些情况下如果不是以管理员身份运行,则会提示命令无效。 或者通过winform程序执行Windows Service 服务时,也需要以管理员身份才能调用Service服务。...
2014-08-12 00:42:19
127
原创 openface 人脸识别开放平台
using System;using System.Collections.Generic;using System.Linq;using System.Text;using QSFaceSDK;namespace SDKTest{ class Program { public static string image_file_1 = "林志玲_1.jpg"...
2014-08-10 17:27:09
404
原创 C# winForm 将窗体状态栏 StatusStrip 示例(显示当前时间)
c# winForm 将窗体状态栏StatusStrip 分成左中右三部分 右边显示当前时间 实现效果: 通过StatusStrip显示窗体状态栏 同时将状态栏分成三部分 居左边显示相关文字信息 中间空白显示 居右边显示时间信息 1.创建窗体及添加StatusStrip 默认StatusStrip名称为statusStrip1 2.在statusStrip1的Items属性中 添加三个...
2014-08-03 18:10:11
412
1
原创 新中新二代身份证dll调用,报尝试读取或写入受保护的内存,这通常指示其他内存已损坏 这个错 ...
新中新二代身份证dll调用问题: 调用这个dll时, 到这个方法: Syn_ReadMsg(nPort, 0, ref CardMsg),就报尝试读取或写入受保护的内存。这通常指示其他内存已损坏 这个错,CardMsg是IDCardData这个结构体,结构体定义如下: [StructLayout(LayoutKind.Sequential, CharSet = ...
2014-06-26 04:04:11
986
原创 IIS故障问题(Connections_Refused)分析及处理
这篇文章其实已经写好很久,只是后来一直没有重现当时的问题,或者因为业务的重要性、投诉的压力也就临时处理了。这几天某地市Web服务器连续多次出现这个问题,正好借这个案例来做个收尾。 前几个月有 台重要的Web服务器(Windows Server2003 + IIS6.0)出现客户端无法访问Web服务器上的站点,错误信息提示为"页面无法显示"的情况。登录服务器检查后发现IIS并未停止运行,...
2014-06-19 11:56:29
257
原创 【OpenCV学习笔记】2.3 OpenCV2.2摄像头读取视频的问题和解决(VS2010)
摄像头读取视频这一块研究了很长时间,终于弄好了。刚开始以为是代码的问题,因为一直编译不过,后来修改了一个小错误,编译通过,但是弹出来的窗口是灰色的没有图像。我“有问题找度娘”了一段时间,发现有不少同 僚也遇到了相似的问题,但是解决办法对于我这里都不甚有效。后来我排除了代码,配置和摄像头出问题的可能性。我的方法就是,一个一个试验。可能比较繁琐, 不太容易发现真正的问题所在,但是还挺有效果...
2014-06-18 16:38:43
373
原创 C# 4.0 并行计算部分 [转发]
沿用微软的写法,System.Threading.Tasks.::.Parallel类,提供对并行循环和区域的支持。 我们会用到的方法有For,ForEach,Invoke。一、简单使用 首先我们初始化一个List用于循环,这里我们循环10次。(后面的代码都会按这个标准进行循环)Code Program .Data = new Lis...
2014-05-03 15:24:40
122
原创 使用ATL创建进程外组件
一、建立一个进程外组件1)打开菜单File|New,选择Projects标签,然后选择“ATL COM AppWizard”2)在Project name栏输入step02,单击ok按钮,在下一个窗口中的Server Type栏选择“Executable (Exe)”之后,单击Finish按钮然后插入对象(与创建进程内组件类似):3)打开菜单Insert|New ATL Object,在左边...
2014-03-24 22:39:07
401
原创 vector 转换成 数组 - [C++]
参考: http://topic.youkuaiyun.com/t/20050429/20/3976956.html 不过那边是转载自《effective stl》。 std::vector很方便,但有时调用的函数的参数规定是数组,需要将vector转为数组,另外开辟一个空间,将vector一项项复制过去代价过大,可用下面的方法。 给定一个 vector...
2013-12-13 18:06:38
2780
原创 SQLite学习手册(数据类型)
一、存储种类和数据类型: SQLite将数据值的存储划分为以下几种存储类型: NULL: 表示该值为NULL值。 INTEGER: 无符号整型值。 REAL: 浮点值。 TEXT: 文本字符串,存储使用的编码方式为UTF-8、UTF-16BE、UTF-16LE。 BLOB: 存储Blob数据,该类型数据和输入数据完全相同。 由于SQLite采...
2013-12-11 14:54:11
123
原创 Crontab的格式
第1列分钟1~59 第2列小时1~23(0表示子夜) 第3列日1~31 第4列月1~12 第5列星期0~6(0表示星期天) 第6列要运行的命令下面是crontab的格式: 分 时 日 月 星期 要运行的命令这里有crontab文件条目的一些例子:30 21 * * * /usr/local/apache/bin/apachectl restart 上面的例子表示每晚的21:30...
2013-12-04 14:36:35
80
原创 Big Endian与Little Endian区别
Big Endian与Little Endian区别 1. 什么是Big Endian和Little Endian? 在设计计算机系统的时候,有两种处理内存中数据的方法。一种叫为little-endian,存放在内存中最低位的数值是来自数据的最右边部分(也就是数据的最低位部分)。比如一个16进制数字0x12345678,在内存存放的方式如下: 低地址 ---...
2013-11-01 11:52:27
168
原创 A small, easy to use Open Source Database Connection Pool Library
http://www.tildeslash.com/libzdb/#home LibzdbVersion 2.12A small, easy to use Open Source Database Connection Pool Library with the following features:Thread safe Database Connectio...
2013-10-28 11:13:02
116
原创 xhprof 使用笔记
【作用】xhprof是facebook开源的一个php性能分析工具。 【安装】xhprof扩展的安装:wget http://pecl.php.net/get/xhprof-0.9.2.tgztar zxf xhprof-0.9.2.tgzcd xhprof-0.9.2/extension/phpize./configure --with-php-con...
2013-10-21 20:21:00
227
原创 linux下kill进程
1. kill作用:根据进程号杀死进程用法: kill [信号代码] 进程ID举例:[root@localhost ~]# ps auxf |grep httpd注意:kill -9 来强制终止退出举例 [root@localhost ~]# ps aux |grep gaim或者 [root@localhost ~]# pgrep -l gaim 5031 g...
2013-10-17 17:49:46
139
原创 修改innodb_flush_log_at_trx_commit参数提升insert性能
最近,在一个系统的慢查询日志里发现有个insert操作很慢,达到秒级,并且是比较简单的SQL语句,把语句拿出来到mysql中直接执行,速度却很快。这种问题一般不是SQL语句本身的问题,而是在具体的应用环境中,由于并发等原因导致的。最可怀疑的地方就是在等待表级锁。加上监控的日志来看,很多SQL是在同一时间完成的,下面的第三列是结束时间,第四列是开始时间:14:27:30 bizId30...
2013-10-14 00:20:37
697
原创 PHP中获取星期的几种方法
PHP星期几获取代码: 1 date("l"); 2 //data就可以获取英文的星期比如Sunday 3 date("w"); 4 //这个可以获取数字星期比如123,注意0是星期日 获取中文星期几: 1 $weekarray=array("日","一","二","三","四","五","六&q
2013-09-17 12:02:37
104
原创 ref:Windows 上静态编译 Libevent 2.0.10 并实现一个简单 HTTP 服务器
原文地址:http://www.s135.com/libevent_windows 本文介绍了如何在 Windows 操作系统中,利用微软 Visual Studio 2005 编译生成 Libevent 2.0.10 静态链接库,并利用 Libevent 静态链接库,实现一个简单的 HTTP Web服务器程序:httpd.exe。 假设 Visual Studio 200...
2013-09-09 00:21:54
137
原创 PHP中include()与require()的区别
1.引用文件方式 对include()来说,在include()执行时文件每次都要进行读取和评估;而对于require()来说,文件只处理一次(实际上,文件内容替换了require()语句)。这就意味着如果有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高。另一方面,如果每次执行代码时相读取不同的文件,或者有通过一组文件叠代的循环,就使用inclu...
2013-09-06 11:17:49
99
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人