摘要: 【0】README 0.0) 本文部分idea 转自:http://blog.csdn.net/collonn/article/details/20128205 0.1) 本文仅针对性地分析AVL树的单旋转(左左单旋转和右右单旋转)和 双旋转(左右双旋转和右左单旋转)的内部核心技巧; 0.2) 不得 阅读全文
posted @ 2017-04-05 19:35 樱の空 阅读(13230) 评论(2) 推荐(8) 编辑
摘要: 1. KMP算法 1.1 定义 Knuth-Morris-Pratt 字符串查找算法,简称为 “KMP算法”,常用于在一个文本串S内查找一个模式串P 的出现位置,这个算法由Donald Knuth、Vaughan Pratt、James H. Morris三人于1977年联合发表,故取这3人的姓氏命 阅读全文
posted @ 2017-03-08 15:41 樱の空 阅读(12129) 评论(5) 推荐(1) 编辑
摘要: 手机号码: /^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/ 区号+座机号码+分机号码:regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$"手机(中国移动手机号码):regexp 阅读全文
posted @ 2017-03-08 14:55 樱の空 阅读(15154) 评论(1) 推荐(0) 编辑
摘要: 对于Josephus问题有两个地方是可以进行优化的。 (总人数为N,编号为从0~N-1;经过M次报数去除一个成员,剩余成员个数为numleft, 记M%numleft为mPrime) 1、被移除的成员与上一个成员之间的距离是M%numleft-1(报数次为M%numleft).当M大于N时,该计算方 阅读全文
posted @ 2017-02-26 18:33 樱の空 阅读(1431) 评论(0) 推荐(0) 编辑
摘要: Matcher类:使用Matcher类,最重要的一个概念必须清楚:组(Group),在正则表达式中()定义了一个组,由于一个正则表达式可以包含很多的组,所以下面先说说怎么划分组的,以及这些组和组的下标怎么对应的.下面我们看看一个小例子,来说明这个问题 引用 \w(\d\d)(\w+) 这个正则表达式 阅读全文
posted @ 2017-02-18 18:33 樱の空 阅读(921) 评论(0) 推荐(0) 编辑
摘要: 当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,并且this只和特定的对象关联,而不和类关联,同一个类的不同对象有不同的this。 下面我们将通过一个 阅读全文
posted @ 2017-02-12 22:30 樱の空 阅读(1842) 评论(0) 推荐(0) 编辑
摘要: 迭代对于JAVA的来说绝对不陌生。我们常常使用JDK提供的迭代接口进行Java集合的迭代。 迭代其实我们可以简单地理解为遍历,是一个标准化遍历各类容器里面的所有对象的方法类,它是一个很典型的设计模式。Iterator模式是用于遍历集合类的标准访问方法。它可以把访问逻辑从不同类型的集合类中抽象出来,从 阅读全文
posted @ 2017-02-12 10:46 樱の空 阅读(920) 评论(0) 推荐(0) 编辑
摘要: 在能够通过编译的前提下,无论局部变量声明时带不带final关键字修饰,对其访问的效率都一样。 并且:重复访问一个局部变量比重复访问一个成员或静态变量快;即便将其final修饰符去掉,效果也一样。 例如说,以下代码: 在能够通过编译的前提下,无论局部变量声明时带不带final关键字修饰,对其访问的效率 阅读全文
posted @ 2017-02-11 11:42 樱の空 阅读(2770) 评论(2) 推荐(0) 编辑
摘要: 许多程序设计语言都有自己的办法告诉编译器某个数据是“常数”。常数主要应用于下述两个方面: (1) 编译期常数,它永远不会改变 (2) 在运行期初始化的一个值,我们不希望它发生变化 对于编译期的常数,编译器(程序)可将常数值“封装”到需要的计算过程里。也就是说,计算可在编译期间提前执行,从而节省运行时 阅读全文
posted @ 2017-02-10 23:55 樱の空 阅读(696) 评论(0) 推荐(0) 编辑
摘要: 事件监听机制的实现:参考图:事件模型_ActionEvent 为了节省资源,系统无法对某个事件进行实时的监听。故实现的机制是当发生某个事件后,处理代码将被自动运行,类似钩子一般。(回调函数) 事件有许多,这边以按钮被按下为例。由于处理的方法函数是我们人为进行编写的,故Button是不知道所要调用的函数名是什么。 对此采用的解决方法为:Button源代码调中用接口方法,而我们的监听处理函数则必... 阅读全文
posted @ 2017-02-08 00:32 樱の空 阅读(6753) 评论(0) 推荐(1) 编辑