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以来已经一年有余了,对Java还只是初阶段的了解,都怪在学校的时候贪玩没有有效的利用时间,现在在一个培训学校学习Java,现在就要做项目了还是什么都不懂,还好有Csdn。
在Csdn的日子里叫我找到了家的感觉,得到了很 ......
我今天学习了sql语句的常用函数,是冯威老师讲的,我做了简单的笔记:
一,SQL函数:
1. 大小写转换函数
lower 转成小写
upper 大写
initcap 将字符串的(每个单词的)第一个字母变为大写,后面的小写
select initcap('huangHY') from dual
&n ......
我今天学习了Oracle数据库如何修改表的知识,是冯威老师讲的课,我做了简单的记录:
1.在表中插入新的列:
alter table tablename
add city varchar(2) default 'rr' //赋默认值
2.修改表中的列:
alter table tablename
modify city varchar(20)
3.删除表中的列:
alter t ......
1 package 和 import的作用是分割全局命名空间,保证我们不会遇到名字的冲突。
2 java解释器的工作程序:
(1) 首先它找到环境变量CLASSPATH , CLASSPATH包含一个或多个目录,它们作为一个特殊的根使用,从这里展开对.class文件的搜索,
从那个根开始,解释器会寻找包名,并将它们每一个点号 ......
package com.gis.biz;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import javax.servlet.http. ......