自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

云都小生

互联网 · 科学 · 阅读 · 思考

  • 博客(16)
  • 资源 (1)
  • 收藏
  • 关注

原创 快速排序

算法——快速排序@Author:云都小生 h3{color:green;font-size:24} p{font-size:22} 概述——理解快速排序 快速排序算法是一种比冒泡效率更高的算法,既剩时间有省空间。这个算法是由东尼霍尔提出的,后来有很多人进行了优化。算法是这样的,一开始给定一个数列:{6,2,8,3,5,1,9,4,7,10}开始的时候,我们选择一个数作为基准数,就选6吧。接着

2017-10-30 16:36:57 294

原创 设计模式——适配器模式

@Author:云都小生 h3{color:green;font-size:24} p{font-size:22} strong{font-size:24;color:red} 概述 “适配器”在我们生活中很常见,像有些电器的工作电压是20V,但是家庭电压是220V,产生了不兼容的问题。但是由于有适配器这种东西,就能解决这个不兼容的问题。在软件开发领域,我们也会碰到这样的问题,两个对象/类

2017-10-25 22:42:59 267

原创 Java集合——HashMap

@Author:云都小生 h3{color:green;font-size:24} p{font-size:22} strong{color:red;font-size:24} 回顾HashMap HashMap实现了Map接口,继承AbstractMap。HashMap也是我们使用非常多的Collection,它是基于哈希表的Map接口的实现。存储的元素是以Key-value的形。 其

2017-10-20 21:11:06 211

原创 Java集合——ArrayList

@Author:云都小生回顾List ArrayList实现了List接口,List接口实现了Collection接口,Collection又实现了Iterator接口···所以它也包含了三个方法——hashNext(),next(),remove()代码实现import java.util.*;public class SetDemo { public static void main(

2017-10-19 22:49:08 285

原创 Java集合——HashSet

@Author:云都小生回顾Set Set是一个接口,实现了Collection接口,同时也实现了Iterator接口,所以它包含了三个方法——hashNext(),next(),remove()实现这个接口的集体集合类都有一个特点,不能存放重复元素,元素插入的顺序与输出的顺序不一致。简单实现import java.util.*;public class SetDemo { public

2017-10-19 22:18:50 263

原创 面向对象设计原则

@Author:云都小生这篇文章几乎都是理论,所以,做好接受的心理准备···面向对象解决的问题 可扩展性、可维护性和可复用性,是面向对象要解决的其中几个核心问题。同时,面向对象设计还追求两个核心的点:高内聚、低耦合。面向对象设计的好处有很多,其中有一点体会:使用这种思想,能够更快的进行开发,更廉价的进行维护。今天我们需要了解一些面向对象设计中的基本原则,这些基本原则背

2017-10-18 23:07:58 289

原创 二分查找法

@Author:云都小生概述 二分算法是一种查找算法,又称折半查找法,是分治思想的具体实现。从一个有序列表中,找到的某个关键字,效率肯定要比遍历法高很多。遍历法的时间复杂度是O(n),二分查找算法的时间复杂度是O(lgn)。算法是这样的,给定一个有序数列a {1,2,13,23,55}如果我们想查找数据23,就先0+a.length/2(折半) = 2;比较一下a[2] == 23,如果是就返回下

2017-10-18 10:16:35 310

原创 冒泡排序算法

作者:云都小生概念 冒泡算法是一种简单的排序算法,时间复杂度为O(N^2)(两层循环)。冒泡算法本质上只有四个字:轻浮重沉。例如对一个数列进行排序 [3,4,12,4,1,6]轻的气泡就是指最小的数,重的气泡就是指比较大的数,小的数要往前移动,大的数要往后移动。(如果是按照从大到小的顺序,就相反)简单冒泡排序 我们先来看一张图,这张图是这样的。每一层循环我都进行一次对比,将最大的数放到后面去。p

2017-10-14 14:28:37 865

原创 设计模式_建造者模式

作者:云都小生概念 建造者模式,本质是将一个复杂对象的创建与它的表示分离,使得同样的构建过程可以创建不同的表示。什么是复杂对象呢?举个栗子,一个赛车游戏,里面的汽车就是复杂的对象,只不过这些复杂的对象都不一样,有不同的轮胎,不同的电池,不同的发动机等等。建造者模式的角色建造者模式中有这么几个角色:抽象建造者、具体建造者、产品角色、指挥者。抽象建造者:它为创建一个产品对象(汽车)的各个部件指定抽象接

2017-10-14 09:39:28 443

原创 HTTP协议详解

@Author:云都小生HTTP协议概述 HTTP协议被称为超文本传输协议,是一个应用层协议,同时,也是Web的核心,规定了浏览器与万维网服务器之间的互相通信规则,它也是万维网信息交换的基础。这个概念看起来很烦,我给它简化一下:HTTP定义了我们从浏览器与网站服务器之间的通信规则。HTTP通常由两个程序实现,一个在客户端,一个在服务端,通过HTTP规定的格式,相互交换报文进行会话。HTTP定义了W

2017-10-13 12:00:18 540

原创 算法——递归算法

@Author:云都小生概念 递归算法的概念,就是通过不断地调用自身,最终达到解决问题的目的。递归有两个点需要注意: 1. 要不断的调用自身; 2. 这个递归要有出口,不能成为死循环; 看下面的例子。用递归解决阶乘 很多介绍递归算法的,都会用递归来做一个题目:计算一个数的阶层。例如:计算5的阶层,!5 = 5 X 4 X 3 X 2 X 1用递归来实现:public class Tes

2017-10-09 16:31:36 537

原创 Java集合

作者:云都小生总述 之前我们存储数据的方法,都是选择用数组。但是数组有一个硬伤,它只能存储固定数据类型的数据。后来我们学习了面向对象,我们能够自己构建出新的数据类型,这样方便多了。例如Student类,我们可以封装名字、年龄、班级等等,我们需要多个Student就直接弄个对象数组。但是如果我们想要将多个不同的对象放到一起,那怎么办?今天,我们来学习Java给我们提...

2017-10-09 11:59:05 254

原创 设计模式_原型模式

设计模式_原型模式作者:云都小生概述 现实中有这么一种情况,我们需要同时用到许多个对象,这些对象都有一部分共同的特点(默认属性),但我们有时候还想要使它们有些不同(改变属性)。例如,许多人经常跟PPT打交道,PPT中提供了多个不同的模版,当我们做PPT的时候,就可以直接使用这些模版,不用自己去制作。如果没有这些模版,我们每次都需要自己去制作,又或者是不断的copy,那该多烦。在设计模式中,我们希望

2017-10-09 11:56:18 309

原创 设计模式_单例模式

在分享今天的笔记之前,我得先澄清一下。关于设计模式的学习,我都是看刘伟博士博客上的资料,因为关于Java实现的设计模式的资料比较少,而刘伟博士整理的又非常的好,不得不膜拜。学习知识最好的方法,就是自己去尝试,然后自己整理出来,跟别人分享,一旦你能够分享出来了,就真的掌握了知识。所以我用这种方式,学习其他博客的东西,整理出来,自己组织语言分享出来,这样是最高效的。所以,我有摘取其他博客的东西,但是也会

2017-10-07 22:16:56 274

原创 Java构造方法

作者:云都小生概述 所谓的构造方法,就是在创建对象的时候自动调用的方法。我们来直接看个例子。public class Mail { String sender; //邮件的发送人 String address; //邮件地址 Mail() //无参的构造方法 { sender = "云都小生";

2017-10-07 21:00:28 288 1

原创 Java I/O操作

Java_I/O操作作者:@云都小生(Author) h3{color:green;font-size:24} p{font-size:22} span{color:red;font-size:24} I/O 概述 I/O实际上指的就是输入(input)、输出(output)操作。Java需要从一些文件上读取信息,或者是写信息,就需要了解这些概念,掌握Java I/O相关类的操作。Java

2017-10-07 20:11:29 377

《23种设计模式(C++)》.pdf

设计模式精解-GoF 23 种设计模式解析附 C++ 实现源码。懂了设计模式,你就懂了面向对象分析和设计(OOA/D)的精要。反之好像也可能成 立。道可道,非常道。道不远人,设计模式亦然如此。 一直想把自己的学习经验以及在项目中的应用经历拿出来和大家共享,却总是下不了这 个决心:GoF 的 23 种模式研读、总结也总需要些时日,然而时间对于我来说总是不可预计 的。 之所以下了这个决心,有两个原因:一是 Robert 的箴言,二是因为我是一个感恩的人, 就像常说的:长怀感恩之心,人生便无遗憾。想想当时读 GoF 的那本圣经时候的苦闷、实 现 23 个模式时候的探索、悟道后的欣悦,我觉得还是有这个意义。

2017-09-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除