摘要:参考连接:http://www.cnblogs.com/lhws/archive/2012/03/10/2389189.html设计模式原则:一.单一职责:一个类只负责一项职责二.里氏替换原则:定义1:如果对每一个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。定义2:所有引用基类的地方必须能透明地使用其子类的对象。通俗的来讲就是:子类可以扩展父类的功能,但不能改变父类原有的功能。三.依赖倒置原则:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖
阅读全文
摘要:参考博文http://blog.csdn.net/program_think/article/details/7032600求小于N的所有质数1.尝试所有小于N的数2.只要尝试小于√x的质数即可。而这些质数,恰好前面已经算出来了3.筛选法首先,2是公认最小的质数,所以,先把所有2的倍数去掉;然后剩下的那些大于2的数里面,最小的是3,所以3也是质数;然后把所有3的倍数都去掉,剩下的那些大于3的数里面,最小的是5,所以5也是质数...... 1 public class TestSushu { 2 3 /** 4 * @param args 5 */ 6 pu...
阅读全文
摘要:找出字符串中对称的子字符串的最大长度(最长回文)
阅读全文
摘要:参考:http://jingyan.baidu.com/article/4b52d702790ddcfc5c774b17.html
阅读全文
摘要:参考网络汉诺塔问题描述: 假设有三个命名为X(TOWER 1),Y(TOWER 2),Z(TOWER 3)的塔座,在塔座X上有n个直径大小各不相同,依次从小到大编号为1,2,3,...,n的圆盘。现要求将X塔座上的n个圆盘移到Z塔座上并按同样顺序叠排, 圆盘移动时必须遵循下列规则: 1)每次...
阅读全文
摘要:来源参考http://blog.csdn.net/crayondeng/article/details/12342989假设有人想从A点移动到一墙之隔的B点,如下图,绿色的是起点A,红色是终点B,蓝色方块是中间的墙。选择路径中经过哪个方格的关键是下面这个等式:F = G + H这里: * G = 从起点A,沿着产生的路径,移动到网格上指定方格的移动耗费。 * H = 从网格上那个方格移动到终点B的预估移动耗费。这经常被称为启发式的参考java代码: 1 package com.java; 2 3 import java.util.ArrayList; 4 import java.ut...
阅读全文