![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
勒布朗.马克思
这个作者很懒,什么都没留下…
展开
-
设计模式-简单工厂、工厂方法、抽象工厂模式详解
前言 工厂模式是比较常用的设计模式,如解析xml中,jdbc连接数据库等)利用好工厂模式对程序的设计很有用处。有的书中把工厂模式分为:简单工厂、工厂方法、抽象工厂。也有把工厂方法模式划分到抽象工厂模式的,认为工厂方法是抽象工厂模式的特例的一种,就是只有一个要实现的产品接口。 我们以汽车厂家生产汽车为例,有奔驰、宝马、奥迪三个汽车厂家要生产汽车 1.简单工厂: 定义共同的接口类: public interface Product { void drive();//汽车都可以用来驾驶 } 奔驰的产品: pu原创 2020-05-26 16:10:22 · 108 阅读 · 0 评论 -
算法之快速排序-优化篇三路快排(java实现)
同理我们也可以分三路排序,这里只贴关键的代码,涉及的其它类在《算法之快速排序-优化篇双路快排(java实现)》中有。 package lean.algo; import java.util.*; public class QuickSort3Ways { // 我们的算法类不允许产生任何实例 private QuickSort3Ways(){} // 递归使用快速排序,对arr[l...r]的范围进行排序 private static void sort(Compar原创 2020-05-19 16:23:08 · 193 阅读 · 0 评论 -
算法之快速排序-基础篇(java实现)
前言 快速排序由C. A. R. Hoare在1960年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 public class QuickSort { // 我们的算法类不允许产生任何实例 private QuickSort(){} // 对arr[l...r]部分进行partition操作 //原创 2020-05-19 16:03:02 · 93 阅读 · 0 评论