[探讨]通过实例再讨论TDD》的相关内容

动态规划,递归与非递归,FP 之野望,描述与计算

长夜漫漫,无心睡眠,不如上 Javaeye 来写帖子吧。 话说前两天有位名唤 mingliangfeng 的朋友(ID 好长 ……),写了一篇好玩的帖子,标题是当当当当 …… 我数数 …… 十四个大字:递归计算向非递归计算转换模板。当时看了帖子和后面的回复就觉得很有意思,存了个念头要就这个题目写一篇相关的东西,显摆一下自己的博学多才。今天不知为何怎么也睡不着,不如就付诸行动,也算造福苍生吧。 ...
by Elminster 2008-06-18 浏览 (4175) 回复 (27) 关键字:

递归计算向非递归计算转换模板 -- 续

上一篇文章对递归向非递归转换的原理和过程作了介绍,本篇谈谈具体的代码实现。还是考虑上一篇文章中的递归例子:f(x) = f(x-1) + f(x-3), f(x) = 10 (x < 3)。用上文分析出来的规律,其实现如下:   public static double nonRecursion(double x) {     double initValue = x;     fin ...
by mingliangfeng 2008-06-07 浏览 (4364) 回复 (53) 关键字: 递归 非递归 模板 recursion non-recursion template

ruby 写的求fib数的性能问题

代码: def fib(n) (n>=2)?fib(n-2)+fib(n-1):n end print(fib(20)+"\n") #print(fib(40)+"\n") 求fib过程中,n<=20速度还算快,n>30都出不来了,dos窗口一直没有自动关闭. 用java写很快就出来了,不知道是什么原因造成这样的结果呢?
by pure 2007-10-25 浏览 (1936) 回复 (12) 关键字:

[转]测试驱动开发全攻略

{关键字} 测试驱动开发/Test Driven Development/TDD测试用例/TestCase/TC设计/Design重构/Refactoring {TDD的目标} Clean Code That Works 这句话的含义是,事实上我们只做两件事情:让代码奏效(Work)和让代码洁净(Clean),前者是把事情做对,后者是把事情做好。想想看,其实我们平时所做的所有工作,除去无用 ...
by ddzhang 2007-04-21 浏览 (123) 回复 (0) 关键字:

Re: ruby 写的求fib数的性能问题

ruby 代码   def fib(n)       fib_iter(n, 1, 0)     end     def fib_iter(n,i,  ...
by dennis_zane 2007-10-25 浏览 (315) 回复 (0) 关键字:

粗看递归

   第一次写blog,答应朋友Leon,写一篇粗略地介绍“递归(recursion)”的文章。    递归,一种古老但依旧实用的东东,很多算法用递归方法表示,用递归写的程序也很容易让人理解。    递归的优美在于使得程序更简洁,同时也更自然。尤其是在处理层次性数据的时候,十分强大。当然,递归的缺点也十分明显- ...
by Joard 2007-07-01 浏览 (1788) 回复 (2) 关键字: [递归]

斐波那契 递归与非递归

1递归 <code> int fib(int n) {if(n==1||n==2) return 1; else return fib(n-1)+fib(n-2); } </code> 2非递归 <code> public class Fibonacci { public static int fibo2(int n) { if(n==0 || n== ...
by xhy0422 2007-11-22 浏览 (221) 回复 (0) 关键字: 斐波那契

斐波那契数列JAVA的实现

package test; public class Fibonacci { public static void main(String[] args) { getFibonacci(5); } private static int[] getFibonacci(int d){ int[] fib = new int[d]; ...
by michelecindy 2008-06-11 浏览 (32) 回复 (0) 关键字:

D语言的性能不一定比Java强

public class Main { private static int fib(int n){ if(n==0 || n==1) return 1; else{ return fib(n-1)+fib(n-2); } } public static void main(String[] args){ for(int i=0; ...
by fxsjy 2007-11-30 浏览 (1905) 回复 (15)

骑士聚会(《程序员》的算法擂台)

在8×8的棋盘上分布着n个骑士,他们想约在某一个格中聚会。骑士每天可以像国际象棋中的马那样移动一次,可以从中间向8个方向移动,请你计算n个骑士的最早聚会地点和要走多少天,要求尽早聚会,且n个人走的总步数最少,先到聚会地点的骑士可以不再移动等待其他的骑士。 从键盘输入n(0<n<=64),然后一次输入n个其实的初始位置xi,yi(0<=xi,y<=7)。屏幕输出以空格分割的三 ...
by snowind9 2007-09-06 浏览 (932) 回复 (16)

一次对LCS的TDD过程

首先根据TDD原则,给出测试用例 package graph; import junit.framework.TestCase; /** * @author B.Chen */ public class TestLCS extends TestCase { public TestLCS(String name) { super(name ...
by leon_a 2007-09-26 浏览 (356) 回复 (3)

菜鸟提问题

发现一个挺有意思的事情。废话不多说,直接上代码。 int main(char[][] argv) { const char[] stringA = "Hello"; // 在默认代码段申请一块只读内存 char[] stringB = stringA; // stringB保存的内存地址跟stringA并不一致 printf("stringA's A ...
by Colorful 2007-05-30 浏览 (856) 回复 (11)

[转贴]你的编程语言可以这样做吗

英文原版在:http://www.joelonsoftware.com/items/2006/08/01.html http://jstang.5d6d.com/thread-185-1-1.html 一篇很好的关于map/reduce的示范文章。看了这个,你就会理解prototype.js中Enumerable的精髓。 通过它,你可以写出很多非常奇特非常美妙的代码。短短几行,功能可不简单哦 ...
by sp42 2007-06-18 浏览 (928) 回复 (2)

JDave - Java的行为驱动编程框架

BDD,即行为驱动编程,是TDD的一个改进版本,BDD本质上也是TDD,但是比TDD要更加自然一些,更DSL化,通过定义一个一个具体可执行的Behavior来驱动软件的开发过程。如果你是一个Ruby程序员的话,那么你一定会发现RSpec已经提供了良好的BDD编程框架。我们正在开发当中的JavaEye3.0网站就是使用了rspec来编写系统的behavior,来驱动编程和单元测试。 不过如果你是一 ...
by robbin 2007-11-21 浏览 (797) 回复 (3) 关键字: JDave bdd

SPProcPool 0.5 发布

SPProcPool 是一个 linux/unix 平台上的进程池服务器框架,使用 c++ 实现。 在 0.5 版中增加了一个类似 apache worker 的服务器模型。在之前 Leader/Follower 模型的基础上,在每个子进程中使用一个固定大小的线程池来为每个请求服务。这个模型的特点是能够支持较高的并发连接数。 项目主页: http://code.google.com/p/spp ...
by iunknown 2008-01-05 浏览 (333) 回复 (0) 关键字: 进程池 prefork

Computer Science 计算机科学经典著作

1.The Art of Computer Programming   Author: Donald.E.Knuth  Web site: http://www-cs-faculty.stanford.edu/~knuth/taocp.html   Book Info: 这部书被誉为20世纪最重要的20部着作之一,与Einstein的<<相对论>>并列,是计算机科 ...
by Odysseus_110 2008-06-05 浏览 (1935) 回复 (16) 关键字:

推荐知识库条目

Comming soon