`
12616383
  • 浏览: 51238 次
  • 性别: Icon_minigender_1
  • 来自: 待定
社区版块
存档分类
最新评论
文章列表
链表——双端链表:   双端链表和单向列表时相似的,但是在单向列表的基础上增加了一个特性,就是增加了对最后一个链接点的引用,就像对第一个链接点的引用一样。但我们试图寻找最后一个链接点的时候就不用像单向链 ...
链表——前言:   (小弟初学数据结构,有错误的地方望大家不吝赐教)     认识链表: 列表相比数组更具有优势,链表不同于数据和其他数据结构依靠位置来进行访问或者其他操作,如数组是依靠下表来操作数据。而链 ...
、模式概述      从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。 ...
队列 队列数据顺序是先进先出,后进后出.队列添加数据的方式很特别,传统意义上的队列,删除或者添加数据时,后面或者前面的所有的数据会依次移动一位。但是这样效率会很低。所以队列的数据排列上会在数组的前端空出几个缓冲位置,这样当操作队列的时候只需要移动指针,而不需要操作整个队列。   class Queue{ private int maxSize; private long[] queArray; private int front; private int rear; private int nItems; public Queue(int s){ max ...
栈   1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。   class Stackx{ public static void main(String[] ...
插入算法 循环数组,以指针数据为基值 并且记录,,通过和左侧(右侧)的循环比较,当比较值大于(小于)基值时将大的值至后,指针继续移动,比较,置换。直到遇到小于基值,或者到数组边界时截止,并且置换至首位。结束一次内循环,这是外循环的指针左侧的是有序。     class Sort{ private long[] a; private int nElement; public Sort(long[] array){ this.a = array; } public static void main(String[] args) { long[] a ...
选择排序  选择排序 观其名,识其意。和冒泡一样通过嵌套循环将数组所有对象扫描一遍,选择最小(最大)的对象, 将其置换至对应的位置(a[0]/a[length-1]).  这里可以将排序的过程看做两个步骤。 1 循环扫描数组,选择当前最小的对象并且记录其位置。 2 将最小的对象置换至对应的位置上。   class Sort{ private long[] a; private int nElement; public Sort(long[] array){ this.a = array; } public static void main(String ...
冒泡排序  该排序通过将数组嵌套循环, 将相邻的两个对象进行比较,正序排序为例,如果a[0]的对象大于a[1]的对象, 则将两个对象位置交换,将小的对象置前,直到数组结束,排序的过程中每次循环时,指针始终 指向是当前最大的对象,将次对象与后面的对象相比较,当小于后一位对象时,置换,指针依然指向 当前最大的对象。当一次循环结束时,已将最大的对象移至 数组尾部。以此类推完成排序。   class Sort{ private long[] a; private int nElement; public Sort(long[] array){ this.a = array; ...
解释:将文件的一段区域映射到内存中,比传统的文件处理速度要快很多   参考: 无格式输入流 110秒 缓冲输入流     9.9秒 随机存取文件  162秒 内存映射文件   7.2秒   例子 package twelve; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import j ...
保存对象引用: 基于前面的例子,我们现在假设每个Manager 都拥有一个秘书Employee,而且一个或者多个Manager 拥有的是同一个秘书,我们不希望保存对象流时出现这种状况, 2个manager  一个秘书employee ,保存时,一共保存了3个employee。这样的话当希望对秘书employee 作出修改时,必须找出其他拷贝对象,再逐一修改。   我们希望做的是只保存和恢复秘书的一个拷贝,磁盘上的对象与内存中的对象布局完全一致。称其为 持久性 。想要达到这种效果,java 使用序列化的 方法,也就是 对象序列化: 1 所有保存到磁盘的对象都有一个序列 2 当向磁盘存储一 ...
一、串行化的概念和目的 1.什么是串行化             对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要时再将对象恢复。我们把对象的这种能记录自己的状态以便将 ...
java.lang.StringBuffer   java.lang.StringBuilder   下面的源代码可以看出两个都是继承了AbstractStringBuilder 这个类,不同的是一个线程安全的,一个不是线程安全的   源代码: StringBuffer public final class StringBuffer extends AbstractStringBuilder implements java.io.Serializable, CharSequence { public synchronized StringBuff ...
1 异常的分类:Error:java运行时系统的内部错误和资源耗尽的错误,迫使程序终止。                      Exception:由于程序错误导致的异常RuntimeException 及曾经能正常运行,由于某种原因导致的异常。   2 抛出异常的方法:  throws 抛出异常,交给上一层处理。一般适用于无需自己处理,或者自己处理不好的异常                              try catch    捕获异常,处理异常。   3 finally :捕捉到异常后必须要执行的程序块。    建议使用try/catch,try/final ...
一共有6处问题,你能找出几处来? 1 OutputStreamWriter out = ...   2 java.sql.Connection conn = ...   3 try { // ⑸   4  Statement stat = conn.createStatement();   5  ResultSet rs = stat.executeQuery(   6   "select uid, name from user");   7  while (rs.next())   8  {   9   ou ...
1 接口是什么?   接口是用来描述类具备的功能,但是并不给出具体的实现。一个类可以继承1个或者多个借口。通过接口来实现多继承。   2接口可以做什么:   在接口定义的方法不需要提供关键字public, 因为接口中所有的方法自动属于public的。 接口中可以包含多个方法,可以再接口中定义常量。   3接口不能做什么?   接口中不能含有实例域,也不能在接口中实现方法。   定义一个接口 package six; /** @Title Comparable.java @description TODO @author qinpeng @d ...
Global site tag (gtag.js) - Google Analytics