数据结构之向量

数据结构之向量

向量即为数据结构中的顺序表结构,java中ArrayList,Vector都是按照这种方式实现,在这里我把向量的操作接口列举出来,具体实现我会放到github上,欢迎大家下载。
https://github.com/pink0453/dataStructure.git

package cn.lyc.ds.list;

public interface List<T> {

    /** * 返回当前元素个数 * @return */
    int size();

    /** * 判断当前是否无元素 * @return */
    boolean isEmpty();

    /** * 添加元素 * @param e * @return */
    boolean add(T e);

    /** * 获取下表为i的元素 * @param i */
    T get(int i);

    /** * 将元素e替换下标为i的元素 * @param e * @param i */
    boolean put(T e, int i);

    /** * 将元素e插入到i的位置其他元素后移 * @param e * @param i */
    T insert(T e, int i);

    /** * 删除下标为i的元素 * @param i */
    boolean remove(int i);

    /** * 查找元素 * @param e * @return */
    boolean contains(Object o);

    /** * 删除重复元素 唯一化 */
    void uniquify();

    /** * 遍历所有元素 */
    void traverse();
}

在这里我还要阐述一下有序向量和无序向量的区别
有序向量:不一定按照顺序排列但至少为可排列的数据类型组成
无序向量:向量中的元素为对象形式,无法比较大小或者说不可以排列

为什么要解释这个问题呢,上述操作中有这样一个接口为唯一化,这个接口主要是去重操作,分为有序版本和无序版本两种方式 我使用的为无序版本,用equals方法判断。

你可能感兴趣的:(java,数据结构,ArrayList)