自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Runner的博客

https://github.com/LiKangLin

  • 博客(42)
  • 收藏
  • 关注

原创 二叉查找树--红黑树

红黑树的基本性质

2017-03-30 10:39:18 489

原创 二叉查找树(查询、插入、遍历、删除)--Java实现

搜索树数据结构支持许多动态集合操作,包括search、insert、delete、maximum、minimum等。二叉查找树的查询、插入、遍历和删除Java实现

2017-03-29 10:46:12 1796

原创 Spring(4)--对AOP的理解

AOP面向切面编程,以及适用的场景,较为典型的声明式事务管理,日志处理等

2017-03-28 17:14:02 422

原创 Spring(3)--Spring容器中的Bean

Spring框架的本质:通过XML配置来驱动Java代码,这样就可以把原本由Java代码管理的耦合关系,提取到XML配置文件中管理,这就实现了系统中各组件的解耦,有利于后期的升级和维护。对于开发者来说,开发者使用Spring框架主要是做两件事(1)开发Bean(2)配置Bean。对于Spring来说,它要做的就是根据配置文件来创建Bean实例,并调用Bean实例的方法完成依赖注入。

2017-03-28 15:41:00 461

原创 Spring(2)--使用Spring容器

Spring有两个核心接口:BeanFactory和ApplicationContext,其中ApplicationContext是BeanFactory的子接口。它们都可代表Spring容器,Spring是生成Bean实例的工厂,并管理容器中的Bean。

2017-03-28 09:09:33 482

原创 Spring(1)--依赖注入IoC

依赖:A对象需要调用B对象,被Spring称为依赖,即A对象依赖B对象。Spring依赖注入IOC的方式

2017-03-27 21:28:51 461

原创 统计字符串

问题描述:统计字符串中字符的个数 如输入:aaaabbbccssaa 则输出:a4b3c2s2a2

2017-03-21 22:02:36 626

转载 TCP的可靠性传输

TCP的可靠性传输,基于滑动窗口协议、流量控制、拥塞控制

2017-03-21 16:12:07 555

原创 Tomcat服务器处理一个http请求的过程

Tomcat处理一个http请求的过程

2017-03-19 15:06:21 2032

转载 Mina工作原理分析

Mina工作原理分析以及线程模型的分析

2017-03-19 11:08:34 1728

原创 反转单向链表和反转双向链表

问题描述:反转单向链表和双向链表 要求:如果链表长度为N,时间复杂度要求为O(N),额外的空间复杂度要求为O(1)

2017-03-17 20:32:24 4632 3

原创 JVM运行时数据区域

一、程序计数器程序计数器是一块较小的内存区域,可以看做是当前线程所执行的字节码的行号指示器,在虚拟机的概念模型里,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成。 由于Java虚拟机的多线程是通过线程轮流切换并分配处理器执行时间的方式实现的。在任何一个确定的时刻,一个处理器(对于多核处理器来说是

2017-03-17 13:22:21 407

原创 打印两个有序链表的公共部分

问题描述:给定两个有序链表的头指针head1和head2,打印两个链表的公共部分思路:由于已经是有序链表,所以从两个单链表的头部开始:(1)如果head1的值小于head2,则head1往下移动(2)如果head2的值小于head1,则head2往下移动(3)如果head1和head2的值相等,则打印这个值,然后head1和head2都往下移动(4)head1或head2有任何一个移动到n

2017-03-15 20:33:24 427

原创 用一个栈实现另一个栈的排序

问题描述:一个栈中元素的类型为整数,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外,可以申请新的变量,但不能申请额外的数据结构。如何完成排序?

2017-03-15 19:59:34 546

原创 由两个栈组成的队列

编写一个类,用两个栈实现队列,支持队列的基本操作(add,poll,peak)栈的特点是先进后出,而对列的特点是先进先出,正好我们用两个栈把顺序反过来实现类似队列的操作。思路:一个栈作为压入栈,在压入数据时只往这个栈中压入,记为stackPush;另一个栈只作为弹出栈,在弹出数据时只从这个栈弹出,记为stackPop。

2017-03-15 11:11:05 543

原创 设计一个有getMin功能的栈

问题描述: 实现一个特殊的栈,在实现栈的基本功能的基础上,再实现返回栈中最小元素的操作。

2017-03-15 10:22:33 435

原创 Java中将单个字符以及字符串转化为数字

Java中单个字符以及字符串转化为数字

2017-03-14 10:09:36 11364

原创 Java中Scanner的next和nextLine的使用以及区别

Scanner实现字符串的输入的两种方法:一是next(),另一种则是nextLine()

2017-03-14 09:35:35 1204

原创 计算字符串最后一个单词的长度

题目描述:计算字符串最后一个单词的长度,单词之间以空格隔开(基础题)思路一:由String的lastIndexOf的方法,直接找到最后一个空格前的字符串的长度,得到最后一个单词的长度

2017-03-14 09:03:43 1523

原创 二维数组的查找

题目描述:在一个二维数组中,每一行都按照从左到右的递增顺序排序,每一列都按照从上到下的顺序排序,请完成一个函数,输入这样一个二位数组和一个整数,判断数组中是否有该整数。思路:充分考虑到该数组行与列递增的特性。 首先选择数组中右上角的数字,如果该数字等于要查的数字,查找过程结束;如果该数字大于要查找的数字,剔除这个数字所在的列;如果该数字小于要查找的数字,剔除这个数字所在的行。

2017-03-13 21:35:18 357

转载 J.U.C--ThreadLocal的应用与使用原理

ThreadLocal的应用与使用原理

2017-03-12 17:13:07 388

转载 java中线程队列BlockingQueue的用法

在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景。 认识BlockingQueue阻塞队列,解决数据共享问题,结合生产者消费者问题

2017-03-12 16:20:26 317

原创 数据结构基础篇(7)--线索二叉树与哈夫曼树

线索二叉树与哈夫曼树

2017-03-11 16:37:26 674

原创 数据结构基础篇(6)--二叉树特性

二叉树的基本性质以及遍历

2017-03-11 15:52:33 649

原创 数据结构基础篇(5)--二叉树

二叉树的几种常见形式以及特点

2017-03-11 11:13:18 413

原创 数据结构基础篇(4)--树

树的基本概念以及常用的几种存储结构

2017-03-11 10:20:42 376

原创 Linux基础篇(2)--在CentOS7下安装JDK1.8以及配置环境变量

Linux基础,CentOS环境下JDK1.8版本的安装,以及配置环境变量

2017-03-10 21:20:35 3925 1

原创 Linux基础篇(1)--Vmware下安装CentOS7

一、Vmware的安装Vmware的安装教程二、Vmware环境下CentOS 7 的安装Vmware环境下CentOS 7的安装下载地址: CentOS 7下载链接以上方法亲测可用,开启Linux学习之路。

2017-03-10 13:13:00 448

原创 数据结构基础篇(3)--算法时间复杂度的常用算法

算法时间复杂度的几种常用形式

2017-03-10 09:39:20 423

原创 数据结构基础篇(2)--算法时间复杂度

算法的时间复杂度

2017-03-09 21:28:02 378

原创 数据结构基础篇(1)--开篇

数据结构中的逻辑结构和物理结构

2017-03-09 20:41:42 356

原创 设计模式(4)--装饰者模式

装饰者模式定义 装饰者模式:动态地将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方案。 设计原则:对扩展开放,对修改关闭。

2017-03-08 21:18:06 410

原创 设计模式(3)--观察者模式

观察者模式定义观察者模式,也叫做发布-订阅者模式,是属于行为型模式中的一种

2017-03-07 17:14:15 339

原创 设计模式(2)--单例模式

设计模式中的单例模式,饿汉式与懒汉式创建实例,线程安全问题,加同步锁机制

2017-03-07 10:57:50 293

原创 设计模式(1)---策略模式

设计模式之策略模式

2017-03-06 16:47:53 416

原创 面试中问到的Java IO中涉及到哪些设计模式

Java IO中涉及到哪些设计模式

2017-03-05 22:09:52 5798

原创 排序篇(7)--快速排序

希尔排序相当于直接插入排序的升级,它们同属于插入排序类,堆排序相当于简单选择排序的升级,同属于选择排序类,而接下来要说明的快速排序则是冒泡排序的一种升级,都属于交换排序类。一、快速排序基本思想:通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序的目的。

2017-03-04 13:25:42 630

原创 排序篇(6)--归并排序

经典排序算法--归并排序,递归实现

2017-03-03 21:55:51 442

原创 轻松入门git操作

轻松入门git操作

2017-03-03 19:32:14 328

原创 排序篇(5)--堆排序

经典排序算法之堆排序

2017-03-03 14:40:52 299

空空如也

空空如也

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

TA关注的人

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