- 博客(9)
- 资源 (3)
- 收藏
- 关注
原创 一道智力题目
有1000个瓶子,其中有一个是有毒的,可以通过给老鼠喂瓶子里的水来测试有没有毒,毒药的药效是24小时,请问题最少多少只老鼠可以在24小时内测试出有毒的瓶子? 从最终结果上来考虑,有n只老鼠,那么24小时后老鼠的状态有两种,死或者活。现在要用这些老鼠标识1-1000这些数字,最少多少只老鼠?ok,这样一来,所有结果很明显了,死活即是01,那么就是一个二进制表示的问题,1000最少用10位二进
2010-04-30 09:59:00 732
原创 突然的一个想法
美国有google,中国有baidu,美国有ebay,中国有taobao,美国有facebook,中国有?为啥在中国社交网站没有做起来?目前能想到两个原因:1是政策原因,放不开;2是用户习惯问题,中国网民没有付费习惯。
2010-04-29 23:23:00 701 2
原创 完全面向对象的好处
今天讨论的问题,突然发现之前彩票券项目里的东西其实是和支付相关的,由于当时不想将这部分逻辑与彩票逻辑耦合,所以通过异步方式以脚本解耦。其实这是不必要的,彩票券可以看成一个特殊的支付,也就是说在付款成功以后,将彩票券标记为已付,退款时标记为退款。这些逻辑完全是支付的逻辑对等。因此只需要实现一个新的支付类,并且让彩票逻辑根据方案类型的不同来得到对应的支付类即可。 看来以后写程序的第一步就应该是
2010-04-28 18:05:00 916
原创 利用jmap和heapAnalyzer对java进程进行内存使用率分析
有时候我们会遇到java程序使用内存过多的情况,这种情况一般是因为程序有内存泄漏,那么如何分析是否有内存泄漏呢?其实原因比较简单,先用jmap来生成一个进程的内存快照,然后利用heapAnalyzer或者Mod4J来对这个快照进行分析,找到内存使用最多的对象。其实有无内存泄漏的一个表现就是内存分布是否均匀,如果不均匀,一般来说可能是有问题的,这个时候就要具体分析了。
2010-04-28 18:00:00 1699
原创 利用php中的eval来模拟java中的动态代理
使用java中的动态代理可以完成很多事情,比如将业务实例进行托管,实现AOP等,但是Php中没有实现这样的东西,昨天突然想到其实可以通过eval来模拟一个动态代理机制。php比java不同的是,php是不需要编译的,因此只要我们能够动态生成一段代码,然后用eval来执行就可以达到效果。代码如下:/** * 代理实现类 */interface IInvocationHandler
2010-04-28 10:44:00 1412
原创 关于SQL_CALC_FOUND_ROWS和COUNT(*)
SQL_CALC_FOUND_ROWS的实现策略是忽略LIMIT得到一个总数,显而易见,它需要拿到你SELECT的所有数据,如果不能用到covering index的话,那这个代价还是比较大的;相反,如果用COUNT(*)的话,只要建立适当的索引就可以很快得到结果,因为不需要去实际取数据,代价是两次查询。相比而言,mysql一般喜欢比较小的查询,因为现在网络交互的代价应该很小了,而查询越小,m
2010-04-22 12:42:00 1170
原创 最小化原则
前几天写了一条sql,需要插入一条记录到数据库,因此写了如下的sql, insert into xxx values(xxx,xxx,xx),当时没有任何问题,结果突然有一天这个功能不能用了。查了半天才发现,原来这个数据表被增加了一个字段,因此values里字段数对不了了。正确的写法应该是insert into xxx (aaa,aaa,aaa) values(xxx,xxx,xxx)。这个问题虽
2010-04-12 12:48:00 2066
原创 电脑重生了!
前天把操作系统从xp升级到win7,装驱动时没有注意升级了bios,结果一打开电脑连自检都不搞了,想来想去可能是bios的问题,但是笔记本没拆过,不敢拆,就找个修电脑的地方拆开cmos放了把电,果然好了。修电脑那人准备忽悠我,说是主板坏了,哎,这年头的人哪!
2010-04-09 10:20:00 651
Computer Science Handbook第二版.下
2010-02-03
Computer Science Handbook第二版.上
2010-02-03
Handbook of Data Structures and Applications
2009-06-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人