会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
一面千人
衣不鲜,体不健,学而时习,悠哉悠哉!
博客园
首页
新随笔
订阅
管理
上一页
1
2
3
4
2017年11月18日
【精】沐浴智慧之光:研究查找算法
摘要: 首先保证这一篇分析查找算法的文章,气质与大部分搜索引擎搜索到的文章不同,主要体现在代码上面,会更加高级,会结合到很多之前研究过的内容,例如设计模式,泛型等。这也与我的上一篇 "面向程序员编程——精研排序算法" 不尽相同。 关键字:二分查找树,红黑树,散列表,哈希,索引,泛型,API设计,日志设计,测
阅读全文
posted @ 2017-11-18 17:10 一面千人
阅读(2289)
评论(2)
推荐(1)
2017年11月5日
缘分一道桥——桥接模式
摘要: 桥接模式是一种很实用的结构型设计模式,它是将抽象部分与它的实现部分分离,使他们都可以独立地变化。 首先介绍一个标准的桥接模式的使用场景: 如果我想买汽车Car,我就要去4S店咨询。例如我们来到了一汽大众 FAWVolkswagen,我们需要咨询一汽大众旗下的车型 scanTypes()。接着我们去了
阅读全文
posted @ 2017-11-05 17:13 一面千人
阅读(1046)
评论(2)
推荐(0)
2017年11月3日
大师的小玩具——泛型精解
摘要: 掌握Java的泛型,这一篇文章足够了。 关键字:泛型,Iterable接口,斐波那契数列,匿名内部类,枚举,反射,可变参数列表,Set 一般类和方法,要么只能使用基础类型,要么是自定义的类。如果要编写可以应用于多种类型的代码,这种刻板的限制会对代码的束缚很大。 Java中,当你将一个基类作为一个方法
阅读全文
posted @ 2017-11-03 21:56 一面千人
阅读(1426)
评论(4)
推荐(3)
2017年10月30日
促和谐好干部——适配器模式
摘要: 我们的笔记本电脑的充电线上通常都会有一个大砖块似得东西,这个东西是用来将家用额定电压220V转换成笔记本适用的电压,它叫做变压器,也叫做适配器。 今天要研究的是适配器模式,名副其实,中心思想也是建立一个适配器,将两个不同的接口或者应用连接起来,让他们能够协作。这种协作有时并不是主动的,就是他们彼此都
阅读全文
posted @ 2017-10-30 20:15 一面千人
阅读(610)
评论(0)
推荐(0)
数据压缩的元老——哈夫曼树精解
摘要: 数据结构从逻辑结构上可以分为:集合、线性表、树、图 集合中常用的数据结构是背包等。 线性表包括栈、链表、队列等。 树包括堆、二叉树、哈夫曼树等。 图包括有向图、无向图、最小生成树、最短路径等(就职于高德地图的算法工程师,图的知识必须完全掌握(ง •̀_•́)ง)。 背包、栈、链表和队列在之前的一篇博
阅读全文
posted @ 2017-10-30 14:01 一面千人
阅读(3374)
评论(0)
推荐(0)
2017年10月25日
面向程序员编程——精研排序算法
摘要: 这篇文章很长,我花了好久的时间(中间公司出了bug,加班了好几天( ¯ ¨̯ ¯̥̥ ))进行整理,如有任何疑问,欢迎随时留言。 关键字:排序算法,时间复杂度,空间复杂度 排序就是研究如何将一系列数据按照某种逻辑顺序重新排列的一门算法。在计算机早期,排序要占用大量计算资源是人们的共识,而今天随着机器
阅读全文
posted @ 2017-10-25 14:35 一面千人
阅读(2885)
评论(4)
推荐(8)
2017年9月13日
零件组装技术——建造者模式深度解析
摘要: 建造者模式是最后一个创建型设计模式,也是研究对象的创建。 将一个复杂对象的创建与它的表示分离,使得同样的构建过程可以创建不同的表示。 创建和表示是什么意思 ? 表示就是外在,对象具体的样子,而内部构建过程是一种组装的概念,有点像套娃,同样的结构,但是却产生了不同大小的样子。 按照惯例,先讲故事。 假
阅读全文
posted @ 2017-09-13 22:20 一面千人
阅读(1051)
评论(0)
推荐(0)
2017年9月12日
克隆一个对象——原型模式深入解析
摘要: 原型模式也是创建型的设计模式,字面意思其实很简单,就是复制一个对象,这里面有什么学问呢? 用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象。 按照惯例,先讲故事。 我们都知道苹果有刻字服务,也就是假如你买了一款iPhone手机,你可以花一点钱让厂商给你刻上你想刻的字,这样体现了这款产
阅读全文
posted @ 2017-09-12 23:48 一面千人
阅读(1391)
评论(0)
推荐(0)
2017年9月11日
精雕细琢——全方位解析单例模式
摘要: 单例模式有的时候特别重要,因为某些系统是要求某个类在整个生命周期中有且只有一个实例存在,这时候就要用到单例模式。 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 单例模式也是创建型设计模式。 我们一步步研究。 按照惯例,先讲故事。 各个大学想请史上最牛科学家来自己学校讲课。 分析一波,既然是
阅读全文
posted @ 2017-09-11 21:54 一面千人
阅读(747)
评论(0)
推荐(0)
2017年9月10日
精雕细琢——全方位解析工厂模式
摘要: 工厂模式是面向对象设计模式中非常重要,非常流行的模式,是应该首先被理解透彻的模式。 我们讲对象的相关职责包括: 1. 对象本身的职责(数据和行为) 2. 创建对象的职责 3. 使用对象的职责 而对象的创建在Java中有四种方式: 1. new 2. 反射 3. clone() 4. 工厂类创建 工厂
阅读全文
posted @ 2017-09-10 23:35 一面千人
阅读(378)
评论(0)
推荐(0)
2017年9月9日
虚拟化明星——深挖轻量级容器docker
摘要: docker是一个轻量级容器,属于操作系统层面的虚拟化技术,封装了文件系统(AUFS)以及网络互联,进程隔离等特性。 传统虚拟化架构: docker虚拟化架构: 可以看出,docker是没有Guest OS一层的,它属于宿主机上面开启的一个单独进程,共享宿主机的内核和硬件。 传统虚拟化技术每个实例都
阅读全文
posted @ 2017-09-09 15:31 一面千人
阅读(1735)
评论(0)
推荐(0)
2017年9月8日
融会贯通——最常用的面向对象设计原则“合成复用原则”
摘要: 复用一个类的时候,多使用对象的组合/聚合的关联关系,而不是继承。 之前提到的“依赖倒转原则”,是以里氏代换原则为基础的实现开闭原则目标的手段,这一条路线涉及到的是类的继承(包括单继承和接口实现),他们支撑了Java多态的特性。 但是今天要谈一谈Java另一个特性——封装。封装就是不要暴露过多的基类内
阅读全文
posted @ 2017-09-08 23:24 一面千人
阅读(413)
评论(0)
推荐(0)
2017年9月7日
基础大扫荡——背包,栈,队列,链表一口气全弄懂
摘要: 提到数据结构,不得不说数据类型,有人将他们比作分子和原子的关系,我们都知道大自然最小的构成单位是原子,数据类型描述的是原子的内部,如质子、中子的情况,而数据结构是分子,由不同的原子以各种各样的结构组成。 先说Java的数据类型,包括八种基本类型以及对象类型, 数据结构,是以上这些不同数据类型的数据元
阅读全文
posted @ 2017-09-07 14:17 一面千人
阅读(3352)
评论(0)
推荐(1)
2017年9月6日
融会贯通——深入了解面向对象设计原则“依赖倒转原则”
摘要: 一千个人眼里有一千个哈姆雷特,下面我尝试用深入浅出的语言贯穿到“控制反转”,“依赖注入”,“面向抽象编程”,以及“面向接口编程”这几个概念。 传递参数,关联(组合&聚合)关系时,要尽量引用高层次的抽象类,使用基类和接口进行变量类型的声明,参数类型的声明,数据类型转换(也是向高层次的抽象类转),而不要
阅读全文
posted @ 2017-09-06 16:14 一面千人
阅读(629)
评论(0)
推荐(2)
上一页
1
2
3
4
公告