线性表——顺序表——时间复杂度计算

  数据结构的核心思想是通过数据结构的思维来优化代码的算法,以此来提升程序的执行性能,缩短程序执行的时间。下面我来举两个例子,以此来说明数据结构的时间复杂度计算问题。

  由于我这里操作的是线性表——顺序表,所以说先把线性表——顺序表的源代码贴出来

AbstractLineMethod.java

package com.mycompany;

import util.ObjectHolder;

/**
 * Created by HP on 2017/9/6.
 */
public interface AbstractLineMethod {
   
    /**
     * 初始化线性表
     * @param size
     */
    void initList(int size);

    /**
     * 销毁线性表
     */
    void destroyList();

    /**
     * 清空线性表
     */
    void clearList();

    /**
     * 线性表判空
     * @return
     */
    boolean listEmpty();

    /**
     * 获取线性表的长度
     * @return
     */
    int listLength();

    /**
     * 获取指定位置处的元素
     * @param i
     * @param ele
     * @return
     */
    public boolean getElem(int i, ObjectHolder ele);

    /**
     * 获取该元素在线性表中第一次出现的位置
     * @param ele
     * @return
     */
    public int locateElem(ObjectHolder ele);

    /**
     * 获取指定元素的前驱
     * @param currentElem
     * @param preElem
     * @return
     */
    public boolean priorElem(ObjectHolder currentElem,ObjectHolder preElem);

    /**
     * 获取指定元素的后继
     * @param currentElem
     * @param nextElem
     * @return
     */
    public boolean nextElem(ObjectHolder currentElem,ObjectHolder nextElem);

    /**
     * 在线性表的指定位置处插入元素
     * @param i
     * @param ele
     * @return
     */
    public boolean listInsert(int i,Object ele);

    /**
     * 删除线性表指定位置处的元素
     * @param i
     * @param ele
     * @return
     */
    public boolean listDelete(int i,ObjectHolder ele);

    /**
     * 循环遍历线性表
     */
    public void listTraverse();

}

LineMethod.java

package com.mycompany;

import util.ObjectHolder;

/**
 * Created by HP on 2017/9/6.
 */
public class LineMethod implements AbstractLineMethod{
   

    private int m_size = 0;
    private Object[] m_pList = null;
    private int m_iLength = 0;

    /**
     * 初始化线性表
     * @param size
     */
    public void initList(int size){
        this.m_size = size;
        this.m_pList = new Object[size];
        this.m_iLength = 0;
    }

    /**
     * 销毁线性表
     */
    public void 
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值