C/C++
文章平均质量分 62
mingspy
这个作者很懒,什么都没留下…
展开
-
mini英汉字典 版本v1.0
<br />刚上班,没有事情干,所有的环境没有准备好,Alias刚发下来,还要办理一些相关的手续...真是无聊,写了一个小英汉字典,将来准备长期做下去,开一个日志进行跟踪。希望可以提高自己的编程水平。不能挂附件,郁闷。<br /> <br />mini英汉字典 v1.0 http://m177.mail.qq.com/cgi-bin/readmail?sid=oJFTNeYJ7QPXb2wh&mailid=ZL2719-zP3B4zDXKccTNzR5_a9Be15&nocheckframe=true&t=原创 2011-05-20 12:56:00 · 1331 阅读 · 0 评论 -
JNI java.lang.UnsatisfiedLinkError
Exception in thread "main" java.lang.UnsatisfiedLinkError: com.mingspy.jseg.JSegJNI.MaxSplit(Ljava/lang/String;)Ljava/util/List;原创 2014-04-09 14:04:39 · 17762 阅读 · 0 评论 -
[算法导论] 快速排序以及最大堆的C++实现
前言重读了经典的>时,我把书上的部分代码用C++实现,然后与自己之前写的代码对比一下,不禁为>中算法实现的精简和优美所折服。今天把代码堆出来,以备不时之需。快速排序/** 2013-02-02 22:20 mingspy 算法导论*/#pragma once#include #include #include using std::cout;using原创 2013-02-16 14:49:31 · 851 阅读 · 1 评论 -
常用算法-mark
// 二分查找 key的位置// arr是排好序的数组templateint binary_search(T * arr, int len, T& key){ int low = 0; hight = len - 1; while(low <= hight){ int mid = (low + hight) >> 1; if(arr[mid]原创 2014-03-28 17:51:19 · 843 阅读 · 0 评论 -
Singleton template
共享一个Singleton template的实现:Singleton.hpp如下/************************************************************************* Template of Singleton, threads safe.* by xiuleili 2013-7-5***************原创 2013-07-05 11:49:25 · 1911 阅读 · 1 评论 -
libdatrie支持中文
下载地址http://download.csdn.net/detail/mingspy/5737467实现方法libdatrie不支持中文,这让人用起来很是不爽。我做了如下更改,使其支持中文:1. typedef uint16 TrieChar; // triedefs.h中2. TRIE_CHAR_MAX 65535 // triedefs.h原创 2013-07-11 15:41:01 · 4352 阅读 · 2 评论 -
libdatrie的DA内存图解
资料DAT的详细介绍及代码见 http://linux.thai.net/~thep/datrie/datrie.html1. Trie到DA的映射图2. trie插入字符串原创 2013-07-10 16:17:35 · 2197 阅读 · 0 评论 -
PCFG parser及实现
源代码点击下载背景介绍:PCFG是ProbabilisticContext Free Grammar的简写,是Chomsky范式中的2型文法。句法分析就是解析出句子的词之间的结构关系,对于什么是句法分析,我们并不陌生,因为我们从上小学开始就经过了句法分析的“严酷”训练,回想一下,语文老师教我们怎么解析一个句子的主谓宾定状补。为了便于科学描述和交流,把一个句法表示成四元组:原创 2013-04-24 12:02:52 · 12641 阅读 · 6 评论 -
windows核心编程 如何等待超过64 kernal object
Windows API WaitForMultiObjects(...) 最多只能等待MAXIMUM_WAIT_OBJECTS个kernal objects。MAXIMUM_WAIT_OBJECTS被定义为64。那么这就限制了一次最多只能等待64个内核对象。根据网上查阅的资料,这里给出一种解决方案,允许等待任意多的内核对象(系统支持的范围内)。#include /** Synchroni原创 2013-02-16 15:16:28 · 2418 阅读 · 4 评论 -
关于字符串全排
编写字符串全排是一个练习递归和算法的好方式,同时也能见到数学知识与代码编写结合起来,求解问题会变得非常简单。这里摘录了两个字符串全排的例子,仅供参考。例一,手机号码与字符全排: 键盘式的手机,对于9宫格式的手机,每个按键上都会刻有数字和字母,这样是否可以编写一个程序把数字转换成字母全排(相当于输入法....).例二,对于给定的字符,写出其全排列。两个例子比较经典,直接看代码吧。//原创 2012-05-22 11:52:54 · 1296 阅读 · 1 评论 -
字符串相似度算法及应用
Levenshtein Distance 简介字符串相似度的算法还是比较经典的DP算法,看到有两篇文章写的比较不错,他们的介绍也非常详细,值得学习。文章地址如下:文章1 http://blog.csdn.net/orbit/article/details/6649322 (C++) ,文章2 http://www.cnblogs.com/ivanyb/archive/2011/11/2原创 2012-05-30 13:14:21 · 5934 阅读 · 0 评论 -
COM Connection point pass UDT as parameters
最近需要用到COM中的Connection Point来传送UDT, 查找了一些文章,终于在codeproject上发现2001年的文章,他的例子传的是一个自定义结构体数组,在后面的评论中有一段传自定义结构的例子,代码如下 HRESULT Fire_NewMyStruct( MyStruct myStruct) { HRESULT hr = S_OK; T * pThis原创 2012-03-08 23:01:11 · 998 阅读 · 0 评论 -
中国象棋博弈程序研究与实现
今年5月份到6月份比较清闲,因为刚换工作,外包Microsoft。刚进入微软工作,需要alias等等一系列东东,办理这些花了大概两个星期,所有一直没有事情干,于是花了3天的时间写完了mini英汉字典,本来想再细化功能的,但是由于1、主要功能已经齐全;2、想要写界面方面的代码需要一原创 2011-07-21 00:50:47 · 1559 阅读 · 0 评论 -
mini英汉字典V3.0
前面两个版本的mini自带都是用Trie树实现的,对于load一个200k左右的字典文件到内存中,通过任务管理器查看占用内存,发现v1.0和v1.2占用的内存大小分别在4.5m、3.8m左右,而本版本也是把所有字典文件load到内存中,这个版本所占内存大约1.2m。Trie树占用内存大的原因是申请的节点太多,对于存储一个英文单词,比如abcd,就要申请5个节点,尽管v1.0把节点的类型分为分支和叶节点,v1.2钟又对分支节点进行了细分,但是节点数目没有减少,又由于字典文件很简单,记录的内容比节点原创 2011-05-30 10:03:00 · 924 阅读 · 1 评论 -
mini英汉字典 v2.0
mini英汉字典 v2.0 英汉字典第二版本 by mingspy=====================================================================================[功能]1、支持带有分割字符的英文单词的查询。2、改善了trie结点的结构,使用list存储child节点的指针。3、把分支节点更细化,分成带有关键值和不带关键值的两类,对有些分支可以节省一个指针。4、从新设计了Trie节点的接口。5、从新设计Dictinoary的接口。6、原创 2011-05-21 22:59:00 · 1383 阅读 · 1 评论 -
打印数据的二进制格式 float double int char long
//今天看MFC里面有个打印二进制的函数,觉得他的实现不太完美,于是动手写了一个。可以打印int, long, float, double的二进制格式。不过感觉float 和 double写的还是需要 改进#include /* 打印二进制*只支持整数和字符型 by mingspy*浮点数,求助更好的算法*/template void toBinary(T t){ int n = sizeof(T) * 8; //get T's bits; //std::co原创 2011-05-22 11:30:00 · 1895 阅读 · 0 评论 -
barrier and rwlock实现POSIX源码
前言在《POSIX多线程程序设计》中,作者David R. Butenhof给我们展示了诸多实用pthread_mutex_t 和 pthread_cond_t构建的线程同步工具,我最喜欢的两个是barrier和rwlock。所以用C实现并在虚拟机上爽了一把。先贴出代码以及注释,以供大家查阅,共同进步。下载源代码barrier 等待所有线程进入同一状态barrier用于停止原创 2013-02-16 17:48:35 · 1550 阅读 · 0 评论