`
zhyuan
  • 浏览: 2828 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论
文章列表
  最近在看设计模式方面的资料.突发灵感,从数据库的连接中联想到了5种设计模式.然后编写了下,都能实现,可能有些实现方式在实际生产环境中并没有意义.就当是对设计模式的学习吧.      首先上演的就是策略模式.我们在连接数据库时,并非一种数据库,比如,有时是MySql,有时是Oracle,有时又换到SQL Server,都要涉及数据库的切换.此时.我们就可以将数据库连接的算法封装起来,使它们可以相互替换.      首先我们定义一个策略接口,用来表示数据库的连接. Java代码  package strategy;    public interface Strategy {    ...
1、提炼 就是对某个过程的一部分,或某个事物的一部分进行抽象并概念化,以减小所表达的目的(要做什么)和实现(做什么,如何做)之间的语义差距。 运用提炼的重构手法包括 Extract Method、 Split Temporary Variable、 Extract Class、 Extract Subclass、 Extract Superclass、 Extract Interface等 2、内联 就是用其直接实现替换原来的间接调用,通过内联可以去掉意义不大的间接性。 运用内联的重构手法包括 Inline Method、 Inline Temp、 Inline ...
java版快速排序算法 public class QuickSort { static int partition(Integer[] iarray, int low,int high) { int temp = iarray[low]; while(low<high) { while(low<high && iarray[high]>=temp) { --high; } iarray[low] = ia ...
1.Bloom Filter 2.线段树 3.树状数组 4.Trie树 5.后缀树,后缀数组 6.并查集 7.Hash表 8.B树 9.红黑树 10.堆与优先队列 BloomFilter——大规模数据处理利器   Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。 一. 实例   为了说明Bloom Filter存在的重要意义,举一个实例:   假设要你写一个网络蜘蛛(web crawler)。由于网络间的链接错综复杂,蜘蛛在网络间爬行很可能会形成“环”。为 ...
Global site tag (gtag.js) - Google Analytics