易截截图软件、单文件、免安装、纯绿色、仅160KB

Java基于可扩充数组的向量实现(算法源码)

/* 高手之作,本人谨以收藏者身份拿出共享供大家参考! */
/*
 * 向量接口
 */
package dsa;
public interface Vector {
//返回向量中元素数目
 public int getSize();
//判断向量是否为空
 public boolean isEmpty();
//取秩为r的元素
 public Object getAtRank(int r)
 throws ExceptionBoundaryViolation;
//将秩为r的元素替换为obj
 public Object replaceAtRank(int r, Object obj)
 throws ExceptionBoundaryViolation;
//插入obj,作为秩为r的元素;返回该元素
 public Object insertAtRank(int r, Object obj)
 throws ExceptionBoundaryViolation;
//删除秩为r的元素
 public Object removeAtRank(int r)
 throws ExceptionBoundaryViolation;
}
/*
 * 基于数组的向量实现
 */
package dsa;
public class Vector_Array implements Vector {
 private final int N = 1024;//数组的容量
 private int n = 0;//向量的实际规模
 private Object[] A;//对象数组
//构造函数
 public Vector_Array() {
  A = new Object[N];
  n = 0;
 }
//返回向量中元素数目
 public int getSize() { return n; }
//判断向量是否为空
 public boolean isEmpty() { return (0 == n) ? true : false; }
//取秩为r的元素
 public Object getAtRank(int r)//O(1)
 throws ExceptionBoundaryViolation {
  if (0 > r || r >= n) throw new ExceptionBoundaryViolation("意外:秩越界");
  return A[r];
 }
//将秩为r的元素替换为obj
 public Object replaceAtRank(int r, Object obj)
 throws ExceptionBoundaryViolation {
  if (0 > r || r >= n) throw new ExceptionBoundaryViolation("意外:秩越界");
  Object bak = A[r];
  A[r] = obj;
  return bak;
 }
//插入obj,作为秩为r的元素;返回该元素
 public Object insertAtRank(int r, Object obj)
 throws ExceptionBoundaryViolation {
  if (0 > r || r > n) throw new ExceptionBoundaryViolation("意外:秩越界");
  if (n >= N) throw n


相关文档:

掌握JAVA的标准

http://www.java-cn.com/technology/tech/4759.html
    偶尔在网上发现的一片关于掌握JAVA的标准,感觉有点意思,虽然在一些观点上有些偏颇,但作为学习JAVA的引导尚可。至于原创是谁没有必要考证。
时常看到一些人说掌握了Java,但是让他们用Java做一个实际的项目可能又困难重重,在这里,笔者根据 ......

Ubuntu Install Java JDK and JRE

Ubuntu Linux Install Sun Java Development Kit ( JDK ) and Java Runtime Environment ( JRE )
by Vivek Gite
 
Q.
How do I install Sun
Java Development Kit (JDK) and Java Runtime Environment (JRE) under
Ubuntu Linux? It appears that there are multiple JRE installed by
default under Ubuntu. ......

Java+Mysql的数据库查找实现


public class select {
 public List XiuGai_select(String keyword){
  List list=new ArrayList();
        Connection conn = null;
  Statement stmt = null;
  String sql=null;
  ResultSet res = null;
  get ......

JAVA 数据结构与算法学习笔记一(转载)

二分查找法和线性查找法
二分查找法是一种比普通线性查找快得多的查找算法,但只适用于有序集合当中。拿升序排序后的整型数组来说,二分法具体的实现原理是:先把待查找数a与数组中间的那个数x对比,如果相等,直接返回x的索引;如果a大于x,则排除掉数组的前面一半(包括x),接着拿a与剩下一半数组中间的那个数x对比,如 ......

java上溯

JAVA是强类型的语言。当引用对象的时候,如果是上溯的话,需要强制转换。如你上面写的,
PiePlot p = (PiePlot)Plot,这就是上溯,生成实例时引用的是父类,需要强制转换,所以就需要加个(PiePlot)来声明Plot(Plot是父类)。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号