问题描述:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array...
分类:
编程语言 时间:
2015-05-10 16:56:42
阅读次数:
137
引言 这一章讲的是Java虚拟机的内存区域可以分为几个部分,书中讲到可以分为五个部分:分别是堆、栈、程序计数器、方法区、本地方法栈 其中堆里存放了对象的实例 而常说的基本数据类型,以及对象的引用就是存放在栈中的,其实更确切的说是存放在虚拟机栈的局部变量表中,虚拟机栈除了局部变量表之外,还担任了描述的...
分类:
编程语言 时间:
2015-05-10 16:57:22
阅读次数:
207
引言 对于Java中的垃圾回收机制,我们需要了解几个方面,本文也是从这几个方面通过回答这些问题而弄明白Java中的垃圾是如何回收的 首先我们要知道哪些内存需要回收,这一部分涉及到的算法有引用计数算法,根搜算法,但引用计数算法无法解决对象之间相互循环引用的问题。 知道了哪些内存需要回收之后,我们还需要...
分类:
编程语言 时间:
2015-05-10 16:54:38
阅读次数:
295
由于xxx平台上自己的博客已经很久没更新了,一直以来都是用的印象笔记来做工作中知识的积累存根,不知不觉印象笔记里已经有了四、五百遍文章。为了从新开始能与广大攻城狮共同提高技术能力与水平,随决心另起炉灶在新的博客与大家分享 经过一段时间项目的沉淀之后,对实际应用中的多线程开发及队列使用产生了深厚...
分类:
编程语言 时间:
2015-05-10 16:55:57
阅读次数:
173
在计算机中所有数据都是以二进制的形式储存的。位运算其实就是直接对在内存中的二进制数据进行操作,因此处理数据的速度非常快。在实际编程中,如果能巧妙运用位操作,完全可以达到四两拨千斤的效果,正因为位操作...
分类:
编程语言 时间:
2015-05-10 15:52:09
阅读次数:
140
我们知道Java中的流分为字符流和字节流,其中字符流主要针对字符文本进行处理,而字节流处理范围更为广泛,毕竟图片、电影等只要是文件都是以二进制的形式存在的,而不是字符。
字符流:
FileReader
FileWriter。
BufferedReader
BufferedWriter
字节流:
FileInputStream
FileOutputStream...
分类:
编程语言 时间:
2015-05-10 15:51:44
阅读次数:
163
Java中接口和抽象类的区别与联系1. 抽象类:
(1).概念:抽象类是对一种事物的抽象,即对类抽。.抽象类是对整个类整体进行抽象,包括属性、行为。Java抽象类和Java接口一样,都用来声明一个新的类型。并且作为一个类型的等级结构的起点。
(2).格式: public abstract class abstractDemo{...
分类:
编程语言 时间:
2015-05-10 15:51:09
阅读次数:
139
6.2.4 组合使用构造函数模式和原型模式(解决原型模式中引用类型值不能的实例不能私有化问题)
创建自定义类型的最常见方式,就是组合使用构造函数模式与原型模式。构造函数模式用于定义实例属性,而原型模式用于定义方法和共享的属性。结果,每个实例都会有自己的一份实例属性的副本,但同时又共享着对方法的引用,最大限度地节省了内存。另外,这种混成模式还支持向构造函数传递参数;可谓是集两种模式之长。下面的代码...
分类:
编程语言 时间:
2015-05-10 15:47:25
阅读次数:
149
泛型(generic)颠倒数组中的所有元素我的java基础一直不是很好,最近抽出时间,来强化一下自己的基础知识,基本功扎实,才能走的更踏实。对于Map集合,我们要熟练的使用增强额for循环机制(for each),其中entrySet method是很重要的。@Test
public void test1(){
Map map = new H...
分类:
编程语言 时间:
2015-05-10 15:46:57
阅读次数:
131
概述??二分查找法主要是解决在“一堆数中找出指定的数”这类问题。而想要应用二分查找法,这“一堆数”必须有一下特征:
存储在数组中
有序排列
所以如果是用链表存储的,就无法在其上应用二分查找法了。(曽在面试被问二分查找法可以什么数据结构上使用:数组?链表?)至于是顺序递增排列还是递减排列,数组中是否存在相同的元素都不要紧。不过一般情况,我们还是希望并假设数组是递增排列,数组中的元素互不相同。理论参见:...
分类:
编程语言 时间:
2015-05-10 15:49:02
阅读次数:
137
分布式系统的基础是多进程之间的并发与协作,这就不可避免的涉及到多个进程对共享资源的互斥访问。
在单系统中,进程间对共享资源的互斥访问可以通过信号量、互斥锁来很容易的实现互斥;
在分布式系统中可能会稍微复杂一点,有些互斥算法的大体思想和单系统中的互斥锁比较类似(比如令牌);但是分布式系统中还有其他更多的互斥方法;
分布式互斥算法可以分为两种不同类型:
1)基于令牌的解决方法,互斥是通过进程之...
分类:
编程语言 时间:
2015-05-10 15:45:50
阅读次数:
194
在Eclipse中添加类的时候,提示如下信息:
Type name is discouraged. By convention, Java type names usually start with an uppercase letter
如下图:
原因是输入的类名“Name”首字母没有大写,把首字母改为大写的就好了。...
分类:
编程语言 时间:
2015-05-10 15:46:18
阅读次数:
154
继承**首先面向对象的三大特性:
1. 封装
2. 继承
3. 多态**语法 class Subclass extends Superclass{ }
作用
继承的出现提高了代码的复用性。
继承的出现让类与类之间产生了关系,提供了多态的前提。
不要仅为了获取其他类中某个功能而去继承
例子class Person {
String name;
int age;...
分类:
编程语言 时间:
2015-05-10 15:46:07
阅读次数:
146
1.我们知道对象创建时,给对象开辟的内存在Heap上,如果对象足够多,或者对象足够大,导致Heap的内存不够分配时就会导致堆溢出。
2.我们知道值类型的变量存储在栈空间,如果值类型变量足够多也会导致栈溢出,同时我们还知道函数的递归调用也会进行压栈操作。
3.下面我们写个小程序来测试一下如果使用堆和栈溢出。
import java.util.ArrayList;
import java...
分类:
编程语言 时间:
2015-05-10 15:45:12
阅读次数:
113
Problem:
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d =
target? Find all unique quadruplets in the array which gives the sum of target.
Note...
分类:
编程语言 时间:
2015-05-10 15:47:36
阅读次数:
106
执行Maven Install打包的时候,出现以下错误信息:[proguard] ProGuard, version 4.4
[proguard] Reading program war [F:\Workspaces\pro-test\target\pro-test-0.0.1-SNAPSHOT.war] (filtered)
[proguard] Error: The input doesn'...
分类:
编程语言 时间:
2015-05-10 15:44:14
阅读次数:
653
今天总结静态链表.
什么是静态链表?
我理解静态链表是一种伪链表,因为它没有使用指针。静态链表使用数组实现的,这个数组是一个结构体数组,结构体由数据域和指针域构成,与单链表不同的是,这个指针域并不是指针,而是一个整数,用来指向下一个结点(数组下标)。
静态链表中实际上相当于有两个链表,一个时实际数据所构成的一个链表,另一个是数组中空元素所构成的链表,称为空闲链表或备用链表,用来存放插入进来的...
分类:
编程语言 时间:
2015-05-10 15:44:25
阅读次数:
139