摘要: 首先简述自己的系统配置:win7+ ubuntu12.04linuxQQ 有各种版本,这里介绍两种:linuxQQ 和 wineQQ1 ------linuxqq是QQ简化版,功能很少,界面很差,但是安装简单 下载地址:http://im.qq.com/qq/linux/ 可以选择对听版本的系统以... 阅读全文
posted @ 2014-07-27 13:03 kcrosswind 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 给定一个矩阵,寻找连通域个数:前后左右相同为连通ex:0 1 0 10 1 1 10 0 1 00 1 0 0输出2利用深度搜索思路: 1 public static int getCount(int[][] A) { 2 int result = 0; 3 ... 阅读全文
posted @ 2014-06-15 11:20 kcrosswind 阅读(3054) 评论(0) 推荐(0) 编辑
摘要: 参考:http://blog.sina.com.cn/s/blog_4c451e0e01013419.htmlhttp://blog.csdn.net/voidcc/article/details/25834331http://www.cnblogs.com/Realh/archive/2010/1... 阅读全文
posted @ 2014-05-31 22:21 kcrosswind 阅读(1590) 评论(0) 推荐(0) 编辑
摘要: 先列举一下我们需要的api:java.util.Collection接口中:toArrayObject[] toArray()返回包含此 collection 中所有元素的数组。如果 collection 对其迭代器返回的元素顺序做出了某些保证,那么此方法必须以相同的顺序返回这些元素。返回的数组将是... 阅读全文
posted @ 2014-05-27 10:54 kcrosswind 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 一切计算机问题,解决方法可以归结为两类:分治和封装。分治是减层,封装是加层。动态规划问题同样可以用这种思路,分治。它可以划分为多个子问题解决,那这样是不是用简单的递归就完成了?也许是的,但是这样会涉及太多的不便的操作。因为子问题有重叠!针对这种子问题有重叠的情况的解决,就是提高效率的关键。所以动态规... 阅读全文
posted @ 2014-04-30 22:35 kcrosswind 阅读(673) 评论(0) 推荐(0) 编辑
摘要: 定义:一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。适用:当存在以下情况时使用Strategy模式1)• 许多相关的类仅仅是行为有异。 “策略”提供了一种用多个行为中的一个行为来配置一个类的方法。即一个系统需要动态地在几种算法中选择一种。2)•... 阅读全文
posted @ 2014-04-22 21:47 kcrosswind 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 定义:模板方法模式(Template method(类行为型)):在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些... 阅读全文
posted @ 2014-04-02 20:44 kcrosswind 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 定义:迭代器模式提供一种方式顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。 阅读全文
posted @ 2014-03-21 22:48 kcrosswind 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 一、使用方法你可以按照默认的自然序列来排序,当然也可以自定义排序方式自己实现Comparator接口,注意这是一个接口,你只需要自己实现里面的compare()即可。eg:Collections.sort(al, new Comparator() { public int compare(Interval b1, Interval b2) { return b1.start - b2.start; } });二、由jdk的源码来看看,Java如何泛化的来处理排序问题。 public static void sort(List list, Comparat... 阅读全文
posted @ 2014-03-09 16:09 kcrosswind 阅读(6586) 评论(0) 推荐(0) 编辑
摘要: 素材来自互联网,因为太多,不一一列举了。 Java把内存分成两种,一种叫做栈内存,一种叫做堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。这就意味着随着代码块的结束,内存得到释放。堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。栈中的变量指向堆内存中的变量。 String并不是基本数据类型(八种基本数据类型:Byte,Short,Integer,Long,Float,Double,Character,Boolean),而是一个对象,并且是不可变的对象(String类为final型的(当然也不可被继承)... 阅读全文
posted @ 2014-03-08 11:06 kcrosswind 阅读(275) 评论(0) 推荐(0) 编辑