package DataStructureTest;

public class SeqList implements LList {

private Object[] element;//声明一个对象数组

private int len;//声明一个顺序表长度,记载实际元素个数

public SeqList(int size)//构造函数,创建一个空表

{

this.element=new Object[size];

this.len=0;

}

public SeqList()//默认构造函数

{

this(64);

}

@Override

public boolean isEmpty() {

// TODO 自动生成的方法存根

return this.len==0;

}

@Override

public int length() {

// TODO 自动生成的方法存根

return len;

}

@Override

public T get(int i) {

// TODO 自动生成的方法存根

if(i>=0&&i

return (T) this.element[i];

return null;

}

@Override

public void set(int i, T x) {

// TODO 自动生成的方法存根

if(x==null)

return;

if(i>=0&&i

this.element[i]=x;

else throw new IndexOutOfBoundsException(i+"");

}

public String toString()

{

String str="(";

if(len>0)

str+=element[0].toString();

for(int i=1;i

str+=","+element[i].toString();

return str+")";

}

@Override

public void insert(int i, T x) {

// TODO 自动生成的方法存根

if(x==null)

return;

if(len==element.length)

{

Object[] temp = element;//新建一个临时存储对象,把原数组存进去

element = new Object[element.length*2];//新建一个数组

for(i=0;i

element[i]=temp[i];//把数组弄回去

}

if(i<0)

i=0;//容许错误机制

if(i>len)

i=len;

for(int j=len-1;j>=i;j--)

element[j+1]=element[j];

element[i]=x;

len++;

}

@Override

public void append(T x) {

// TODO 自动生成的方法存根

insert(len,x);

}

@Override

public T remove(int i) {

// TODO 自动生成的方法存根

if(i<0||i>len-1||len==0)

return null;

T old = (T)element[i];

for(int j=i;j

element[j]=element[j+1];

element[len-1]=null;

return old;

}

@Override

public void removeAll() {

// TODO 自动生成的方法存根

len=0;

}

@Override

public T search(T key) {

// TODO 自动生成的方法存根

for(int i=0;i

if(element[i].equals(key))

return (T)element[i];

return null;

}

}

java seqlist_来吧java,创建一个SeqList类相关推荐

  1. 《JAVA练习题目9》 创建一个Person类和一个Family类。(这次的OJ实在写的没有状态,被样例搞崩了,这次代码还有好多代码复制等一系列不良现象,就是为了过OJ写的。。大家凑活看一下吧)

    题目内容: 创建一个Person类和一个Family类.其中, Person类包含编号id(整型).名字name(字符串).性别gender(字符串)三个属性,和一个初始化对象所有属性的有参构造方法, ...

  2. 创建一个Cycle类,它具有子类Unicycle,Bicycle和Tricycle。演示每一个类型的实例都可以经由ride()方法向上转型为Cycle。

    Thinking in Java 8.1 练习1 创建一个Cycle类,它具有子类Unicycle,Bicycle和Tricycle.演示每一个类型的实例都可以经由ride()方法向上转型为Cycle ...

  3. 定义一个dog类java_JAVA!在线求助!要求创建一个dog类....

    JAVA!在线求助!要求创建一个dog类.... 关注:75  答案:6  mip版 解决时间 2021-01-24 07:31 提问者妳有我霸氣嗎 2021-01-23 17:49 编写程序,要求创 ...

  4. java订单类_基于Java创建一个订单类代码实例

    这篇文章主要介绍了基于Java创建一个订单类代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 需求描述 定义一个类,描述订单信息 订单id 订 ...

  5. java订单类_使用Java创建一个订单类代码实例

    这篇文章主要简介了使用Java创建一个订单类代码实例,文中通过示例代码简介的非常具体,对大家的学习或者工作具有一定的参考学习网上卖,需要的朋友可以学习下 需求描述 定义一个类,描述订单信息 订单id ...

  6. java创建一个图形类getv_java建立类和对象分糖果

    10个小孩围成一圈分糖果,老师分给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第九个小孩14块,第十个小孩2 ...

  7. JAVA创建一个Box类(长方体),在Box类中定义三个变量,分别表示长方体的长(length)、宽(width)和高(heigth)

    编程创建一个Box类(长方体),在Box类中定义三个变量,分别表示长方体的长(length).宽(width)和高(heigth),再定义一个方法void setBox(int l, int w, i ...

  8. 《JAVA》编程创建一个Box类(长方体),在Box类中定义三个变量

    问题:编程创建一个Box类(长方体),在Box类中定义三个变量,分别表示长方体的长(length).宽(width)和高(heigth),再定义一个方法void setBox(int l, int w ...

  9. Java练习题 类 先创建一个Point类,然后定义Trianglele类。在Trianglele类中定义三个Point的实体来表示一个三角形的三个点,然后定义两个方法求三角形的周长、面积。

    先创建一个Point类,然后定义Trianglele类. 在Trianglele类中定义三个Point的实体来表示一个三角形的三个点,再定义构造方法对这三个点进行初始化,然后定义两个方法求三角形的周长 ...

最新文章

  1. 201771010119穷吉第八周
  2. mysql实现日志系统_基于Hadoop/CloudBase/MySQL的日志分析系统的设计与实现
  3. c++趣味小程序_工具类小程序10天增长103万全复盘
  4. python3(一)数字Number
  5. mybatis源码阅读(七) ---ResultSetHandler了解一下
  6. flower.php,flower.php
  7. 美化版彩虹自助下单程序注册登录页源码
  8. Java进阶之路——从初级程序员到架构师,从小工到专家必会的技能
  9. 具有搜索和自定义分页的React Bootstrap表
  10. PJ可能会用到的动态规划选讲-学习笔记
  11. JAVA中this的四种用法的详解
  12. 微擎支持html微信支付,微信小程序云开发:现已原生支持微信支付
  13. 宏观经济判断指标-GDP、CPI、PPI、PMI
  14. HAL库的学习 ——FLASH的使用
  15. Linux面试题史上最全总结
  16. YYC松鼠短视频系统v3.5版本--稳定版本---优化性能以及各处接口返回以及部分ui页面细节
  17. 重磅!这可能是史上最全的AI产业链地图了
  18. Lambda钱包API接入教程
  19. CVE-2018-6794一把梭
  20. 基于大数据技术对基金分析----By Glorio

热门文章

  1. 2022ISCC PWN
  2. android录像限制大小,uni-app 拍摄视频限制最大长度解决方案
  3. 在线网校系统源码【支付、微信登录、题库、考试、直播】等功能
  4. 固态继电器与传统继电器的区别
  5. matlab3854芯片控制电路,高功率因数开关电源的研究与实现
  6. 语音软件测试用例,手机软件测试用例.pdf
  7. fc重装机兵计算机密码,FC重装机兵秘籍大全。。。。
  8. 0606 第22章 linux gawk进阶
  9. 操作系统哲学原理(08)线程原理-线程同步
  10. jQuery写的一棵动态加载的树