代码改变世界

[转]SQLite在字符串比较中的大小写问题

2011-04-07 17:26 by Hailoong, 361 阅读, 0 推荐, 收藏, 编辑
摘要:大部分数据库在进行字符串比较的时候,对大小写是不敏感的。但是,最近使用SQLite的时候,却发现它的情况恰好相反。假设表User的结构和值如下: UserName 1User1执行下面的SQL语句:SELECT * FROM [User] WHERE UserName = 'user1'结果是没有找到任何记录。明显地,SQLite在进行字符串比较的时候,默认对大小写是敏感的。这会对应用程序造成不良的影响。比如,用户在输入用户名的时候必须严格按照大小写输入,这是一种很不好的用户体验;用户表中可能同时存在 user 和 USER 两个用户,容易造成混淆。由于SQLite是近年来才兴 阅读全文

[转]线性筛法求质数(素数)表及其原理

2011-01-31 14:16 by Hailoong, 734 阅读, 1 推荐, 收藏, 编辑
摘要:参考链接:http://leonbule.blogbus.com/logs/5342169.html http://kmplayer.javaeye.com/blog/606352原理:1. 任何一个合数都可以表示成一个质数和一个数的乘积2. 假设A是一个合数,且A = x * y,这里x也是一个合数,那么有: A = x * y; (假设y质数,x合数) x = a * b; (假设a是质数,且a x)- A = a * b * y = a * Z (Z = b * y)即一个合数(x)与一个质数(y)的乘积可以表示成一个更大的合数(Z)与一个更小的质数(a)的乘积这也是理解代码中 i 阅读全文

[转]对一些大数库的简介

2011-01-31 14:10 by Hailoong, 622 阅读, 0 推荐, 收藏, 编辑
摘要:原文链接:http://leonbule.blogbus.com/logs/5342169.html在网络安全技术领域中各种加密解密算法的软件实现上始终有一个共同的问题就是如何在普通的PC机上实现大数的运算。众所周知,我们现在日常生活中所普遍应用的计算机,即我们通常所说的PC机个人电脑大部分的机器内部字长还是32位的,最近才开始向64位的字长过渡,但是在各种加密解密的算法中为了达到一定的安全强度,都是要求在128位、512位或者是1024位这样的字长下进行加减乘除模逆等各种数学运算,我们称为大数运算。在这样的前提下,如何在PC机上快速高效的实现大数运算就很自然的成为了在PC机上实现加密解密算法 阅读全文

排版中字号、磅值、毫米换算表

2011-01-21 00:40 by Hailoong, 2048 阅读, 0 推荐, 收藏, 编辑
摘要:初号 =42磅=14.82毫米 小初 =36磅=12.70毫米 一号 =26磅=9.17毫米 小一 =24磅=8.47毫米 二号 =22磅=7.76毫米 小二 =18磅=6.35毫米 三号 =16磅=5.64毫米 小三 =15磅=5.29毫米 四号 =14磅=4.94毫米 小四 =12磅=4.23毫米 五号 =10.5磅=3.70毫米 小五 =9磅=3.18毫米 六号 =7.5磅=2.56毫米 小六 =6.5磅=2.29毫米 七号 =5.5磅=1.94毫米 八号 =5磅=1.76毫米 阅读全文

[转]编程珠玑--粗略估算

2010-11-05 15:43 by Hailoong, 258 阅读, 0 推荐, 收藏, 编辑
摘要:原文作者:轩脉刃de刀光剑影 粗略估算是《编程珠玑》中第七章提到的内容。 这篇文章将“粗略估算”看做是一项工程技术,是程序员必备的一项技能之一。 本人非常同意这个观点。粗略估算是一种把复杂的事情简单化的能力。我们对某个算法的时间复杂度和空间复杂度的估算就是基于这种估算的能力。如果你能较为准确的估算出一个程序的输出结果,如果你能准确估算出这个程序的运行时间,如果你能... 阅读全文

[转]编程珠玑--位图法排序

2010-11-05 15:40 by Hailoong, 408 阅读, 0 推荐, 收藏, 编辑
摘要:原文作者:轩脉刃de刀光剑影 位图法是《编程珠玑》第一章中出现的磁盘排序算法。   题目:一个最多包含n个正整数的文件,每个数都小于n,其中n=10^7,且所有正整数都不重复。求如何将这n个正整数升序排列。 约束:最多有1MB的内存空间可用,有充足的磁盘存储空间。   分析:这个题目的最大亮点是只有1MB的内存空间,我们可以通过计算得出,内存只有1MB可以储存的in... 阅读全文

关于捕获WM_MOUSELEAVE/WM_NCMOUSELEAVE消息和TrackMouseEvent 的使用

2010-10-30 21:51 by Hailoong, 1399 阅读, 0 推荐, 收藏, 编辑
摘要:在网上看了很多片文章都说要捕获WM_MOUSELEAVE/WM_NCMOUSELEAVE消息,则需要先使用TrackMouseEvent,并且每一次TrackMouseEvent调用只能产生一次的WM_MOUSELEAVE/WM_NCMOUSELEAVE消息,以后需要再次调用TrackMouseEvent才能继续捕获WM_MOUSELEAVE/WM_NCMOUSELEAVE消息. 于是产生了很多代... 阅读全文

WebQQ 提示"您的输入有误, 请重试" 解决办法.

2010-10-25 19:49 by Hailoong, 739 阅读, 0 推荐, 收藏, 编辑
摘要:学校机房里想和同学交流下,不方便走动,每次去都装个客户端QQ又不是很方便.于是就想起了网页版的QQ webQQ可是在机房里面登陆的时候每次都提示 "您的输入有误, 请重试。"遂 Google之,在Alex刺客处发现原来是腾讯的一个服务器的域名imgcache.qq.com没有得到解析造成的.于是按照捉着给出的建议添加一条Hosts记录就OK了.HOSTS记录为93.184.220.20 imgca... 阅读全文

[转]窗口重绘技术--虚拟窗口实现法

2010-10-25 14:13 by Hailoong, 485 阅读, 0 推荐, 收藏, 编辑
摘要:转载http://www.moon-soft.com/doc/18610.htm1 Windows程序是图形窗口,各窗口之间可以互相切换。然而,就在这窗口的切换之中,涉及到一个窗口重绘的问题:当A窗口被B窗口覆盖或者部分覆盖之后,移去B窗口时,A窗口中的内容会被B窗口擦去……2---------------------------当B窗口移去的时候,如何实现A窗口的重绘呢?这里有三种方法:1)当窗口的内容是用某种计算方法创建的时候,可以的WM_PAINT消息处理之中再次计算重新绘出窗口。这种方法适用于计算量很小的情况,否则,计算时间太长,重绘效果仍然不理想~2)预先保存窗口显示事件的记录,当窗 阅读全文