摘要: 判断链表中是否有环存在: 设置两个指针p,q,开始时两个指针均指向head; p每次向前移动一步,q每次移动两步;不断移动,若在移动过程中p和q重合(p == q)则说明有环(证明略)。 代码: struct ListNode { int val; struct ListNode... 阅读全文
posted @ 2015-08-22 23:33 sunp823 阅读(249) 评论(0) 推荐(0) 编辑
摘要: Head First一书中对于策略(strategy)模式的正式定义是:策略模式定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。 为了介绍这个算法,书中讲了一个例子: 在某个游戏中,有各种各样的鸭子,系统的内部设计使用了严格的OO技术,设计了一个鸭子(... 阅读全文
posted @ 2015-08-22 21:52 sunp823 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 外观模式(Facade)是结构型设计模式,外观模式就是为一个子系统中的多个类提供统一接口的方法,把一个组件单元构建为一个子系统有助于减少软件的复杂性,而且可以使子系统与其他组件的通信关系更加间接、易控制,可以最大限度的降低组件间的耦合度。达到这一个目标的最好方法就是引进一个外观类... 阅读全文
posted @ 2015-08-22 01:07 sunp823 阅读(162) 评论(0) 推荐(0) 编辑