2008-05-31

两段java代码的比较

关键字: 递归 oom
第一个程序: import java.util.ArrayList; import java.util.List; public class TailRecursionTest { public static void main(String[] args) { TailRecursionTest t = new TailRecursionTest(); for (int i = 0; i < 10000; i++) t.a(0); } public void a(int j) ...
2008-05-29

Logic Programming With Prolog学习笔记(二)

关键字: prolog 逻辑编程
  第六章:循环 1、一定次数的循环,看代码,与 Erlang 一模一样: loop(0). loop(N):-N>0,write('The value is: '),write(N),nl, M is N-1,loop(M). 再看一个例子: output_values(Last,Last):- write(Last),nl, write('end of example'),nl. output_values(First,Last):-First=\=Last,write(F ...
  • 08:54
  • 浏览 (142)
  • 评论 (0)
2008-05-29

Logic Programming With Prolog学习笔记(一)

关键字: prolog 逻辑编程
第一章:Getting start 1、 hello world: write(“Hello World”),nl,write(“Welcome to Prolog”),nl. 以 .号做结束,有一系列目标( goal)组成(一般也称为查询 query),目标之间用 ,号隔开,这里的 write和 nl其实是内建的 IO谓词,总共 4个目标按顺序执行, nl是开始一个新行,所有目标达成, Prolog系统会输出 yes。 2、 ...
  • 08:52
  • 浏览 (148)
  • 评论 (0)
2008-05-21

Insect Workflow

关键字: workflow java
    今天整理代码,发现一个去年写的简单的工作流引擎,基于petri网(参考这里的笔记 ),实现了顺序、并行、循环和选 择四种路由,资源也实现了人工驱动和定时、延迟时间驱动;目前只实现了将工作流数据保存在内存的版本,然后就换工作,折腾着就忘了这个事儿,本来是计划加 入数据库存储的。尽管只是个toy,可能对工作流感兴趣,或者想自己实现一个玩玩的朋友有参考价值,放到了google code上,svn地址:  http ://insectworkflow.googlecode.com/svn/trunk/   &n ...
2008-05-21

最近的学习和工作

关键字: continuation scheme 工作
    转眼间,来广州快半年了,感觉还不错。广州如死鱼所说的那样,是个包容并且很有活力的城市,习惯了周末煲汤,去天河公园跑跑步,这生活还是挺舒适的,除了比较潮的天气。     最近跟公司闹了点不愉快,在转正时间上,其实不是多大的事,只是心里不舒服罢了,干起活来也没什么激情了,呵呵。当然,手头的工作咱还是要高效率地完成, 做完两个游戏后,现在转到棋牌类,棋牌类游戏核心就两个算法:随机发牌和出牌判断。随机发牌算法,学习了云风的blog上提到的方法,感觉还可以接受;出 牌规则判断,倒是没想象中的复杂,建立牌型的OO模型,一切 ...
2008-05-08

Ruby中实现stream

关键字: stream 延时求值
     流是通过延时求值实现的,Ruby中实现stream也是可以做到,可惜就是没有尾递归优化。按照sicp,首要的是两个函数:delay和force: def mem_proc(exp) alread_run=false result=false lambda{ if !alread_run result=exp.call alread_run=true result else result end } end def force(d ...
2008-05-05

使用Rope来高效处理长字符串

关键字: rope java ruby 长字符串
    前段时间看了这篇文章《Ropes:理论与实践 》。这两天为了提高工作中某个系统对外接口的效率,才认真学习了一番。本质上Ropes是将字符串表示为一棵二叉树,特别适用于长字符串的处理,貌似c++ STL库中也有这么个实现。具体实现和原理还是看这篇paper 。《Ropes:理论与实践 》 一文中给出的测试数据相当惊人,Ropes比之String和StringBuffer在append,insert,delete等操作上的效率都有一 个数量级以上的差距。跑下作者给出的测试程序,其实在测试的字符串不是很长的情况下,这个差距并没有那么大,这也从侧面说明了 ...
dennis_zane
搜索本博客
存档
最新评论