当前位置: 首页 > news >正文

怎么做免费网站网站查询访问

怎么做免费网站,网站查询访问,深圳南山做网站,沃尔玛跨境电商平台欢迎大家来到我的博客~欢迎大家对我的博客提出指导,有错误的地方会改进的哦~点击这里了解更多内容 目录 一、线性表二、顺序表 一、线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结…
                                         欢迎大家来到我的博客~欢迎大家对我的博客提出指导,有错误的地方会改进的哦·~

点击这里了解更多内容

目录

  • 一、线性表
  • 二、顺序表

一、线性表

线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列…
线性表在逻辑上是线性结构,也就说是连续的一条直线。但是在物理结构上并不一定是连续的,线性表在物理上存储时,通常以数组和链式结构的形式存储。

在这里插入图片描述

二、顺序表

顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储,在数组上完成数据的增删查改。
顺序表的实现:

1.定义一个接口,里面放着需要实现的方法:

public interface Ilist {// 新增元素,默认在数组最后新增public void add(int data);boolean isFull();// 在 pos 位置新增元素public void add(int pos, int data);// 判定是否包含某个元素public boolean contains(int toFind);// 查找某个元素对应的位置public int indexOf(int toFind);// 获取 pos 位置的元素public int get(int pos);// 给 pos 位置的元素设为 valuepublic void set(int pos, int value);//删除第一次出现的关键字keypublic void remove(int toRemove);// 获取顺序表长度public int size() ;// 清空顺序表public void clear();// 打印顺序表,注意:该方法并不是顺序表中的方法,为了方便看测试结果给出的public void display() ;
}

2.定义一个mySeqlist类去继承接口,然后对,每个方法进行重写。

public class mySeqlist implements Ilist{public final int DEFALUT_CAPTICY=10;public int[] array;//定义起始数组大小为10public mySeqlist() {this.array =new int[DEFALUT_CAPTICY];}//顺序表的元素个数public int usesize;// 新增元素,默认在数组最后新增@Overridepublic void add(int data) {}@Overridepublic boolean isFull() {return false;}@Overridepublic void add(int pos, int data) {}@Overridepublic boolean contains(int toFind) {return false;}@Overridepublic int indexOf(int toFind) {return 0;}@Overridepublic int get(int pos) {return 0;}@Overridepublic void set(int pos, int value) {}@Overridepublic void remove(int toRemove) {}@Overridepublic int size() {return 0;}@Overridepublic void clear() {}@Overridepublic void display() {}
}

接下来一个一个来实现这些方法,然后完成一个顺序表的实现。

打印顺序表,注意:该方法并不是顺序表中的方法,为了方便看测试结果给出的.

@Overridepublic void display() {for (int i = 0; i < usesize; i++) {System.out.print(array[i] + " ");}}

判断数组是否存储满了

@Overridepublic boolean isFull() {return this.usesize==array.length;}

数组存储满了,然后想插入数据就得进行扩容。


private int[] grow() {return this.array= Arrays.copyOf(this.array,2*this.array.length);}

新增元素,默认在数组最后新增

    @Overridepublic void add(int data) {//判断数组是否存储满了if(isFull()){//如果忙了就扩容grow();}array[usesize]=data;usesize++;}private int[] grow() {return this.array= Arrays.copyOf(this.array,2*this.array.length);}@Overridepublic boolean isFull() {return this.usesize==array.length;}

再生成一个test类,每写完一个方法,然后测试是否成功

public class Test {public static void main(String[] args) {mySeqlist mylist=new mySeqlist();//新增mylist.add(1);mylist.add(6);mylist.add(10);mylist.display();}
}

运行结果:
在这里插入图片描述


在 pos 位置新增元素
可以自定义一个异常,来判断输入的pos位置是否合法

public class posillegal extends RuntimeException{ public posillegal(){super();}public posillegal(String S){super(S);}
}

定义一个方法来判断pos是否合法

   private void Check(int pos) {if(pos<0||pos>usesize){throw new posillegal("pos位置不合法!!!");}}

在 pos 位置新增元素

   public void add(int pos, int data) {try{Check(pos);if(isFull()){//如果忙了就扩容grow();}for (int i = usesize; i >pos ; i--) {array[i]=array[i-1];}array[pos]=data;usesize++;}catch (posillegal e){e.printStackTrace();}}

测试:
在这里插入图片描述


点击这里了解什么是异常

判定是否包含某个元素
@Overridepublic boolean contains(int toFind) {//先判断数组是否为空if(isempty()){return false;}if(Find(toFind)){return true;}return false;}private boolean isempty() {return usesize==0;}private boolean Find(int tofind) {for (int i = 0; i < usesize; i++) {if(array[i]==tofind){return true;}}return false;}

在这里插入图片描述


获取值的下标

   @Overridepublic int indexOf(int toFind) {for (int i = 0; i < usesize; i++) {if(array[i]==toFind){return i;}}return -1;}

在这里插入图片描述


获取pos位置的值

@Overridepublic int get(int pos) {try{Check(pos);return array[pos];}catch (posillegal e){e.printStackTrace();}return  -1;}

在这里插入图片描述


把pos位置的元素设置变成value

  @Overridepublic void set(int pos, int value) {array[pos]=value;}

在这里插入图片描述


去除某个值

  @Overridepublic void remove(int toRemove) {if(isempty()){return;}int toremove=indexOf(toRemove);for (int i = toremove; i <usesize ; i++) {array[i]=array[i+1];}usesize--;}

在这里插入图片描述


求顺序表的长度

@Overridepublic int size() {return usesize;}

在这里插入图片描述


清空顺序表

   @Overridepublic void clear() {usesize=0;}

在这里插入图片描述


好了,到这里整个顺序表就差不多完成了。下面是完整代码:

Ilist 接口

public interface Ilist {// 新增元素,默认在数组最后新增public void add(int data);boolean isFull();// 在 pos 位置新增元素public void add(int pos, int data);// 判定是否包含某个元素public boolean contains(int toFind);// 查找某个元素对应的位置public int indexOf(int toFind);// 获取 pos 位置的元素public int get(int pos);// 给 pos 位置的元素设为 valuepublic void set(int pos, int value);//删除第一次出现的关键字keypublic void remove(int toRemove);// 获取顺序表长度public int size() ;// 清空顺序表public void clear();// 打印顺序表,注意:该方法并不是顺序表中的方法,为了方便看测试结果给出的public void display() ;
}

mySeqlist类

import java.util.Arrays;public class mySeqlist implements Ilist{public final int DEFALUT_CAPTICY=10;public int[] array;//定义起始数组大小为10public mySeqlist() {this.array =new int[DEFALUT_CAPTICY];}//顺序表的元素个数public int usesize;// 新增元素,默认在数组最后新增@Overridepublic void add(int data) {//判断数组是否存储满了if(isFull()){//如果忙了就扩容grow();}array[usesize]=data;usesize++;}private int[] grow() {return this.array= Arrays.copyOf(this.array,2*this.array.length);}@Overridepublic boolean isFull() {return this.usesize==array.length;}// 在 pos 位置新增元素@Overridepublic void add(int pos, int data) {try{Check(pos);if(isFull()){//如果忙了就扩容grow();}for (int i = usesize; i >pos ; i--) {array[i]=array[i-1];}array[pos]=data;usesize++;}catch (posillegal e){e.printStackTrace();}}private void Check(int pos) {if(pos<0||pos>usesize){throw new posillegal("pos位置不合法!!!");}}// 判定是否包含某个元素@Overridepublic boolean contains(int toFind) {//先判断数组是否为空if(isempty()){return false;}if(Find(toFind)){return true;}return false;}private boolean isempty() {return usesize==0;}private boolean Find(int tofind) {for (int i = 0; i < usesize; i++) {if(array[i]==tofind){return true;}}return false;}//获取值的下标@Overridepublic int indexOf(int toFind) {for (int i = 0; i < usesize; i++) {if(array[i]==toFind){return i;}}return -1;}//获取pos位置的值@Overridepublic int get(int pos) {try{Check(pos);return array[pos];}catch (posillegal e){e.printStackTrace();}return  -1;}//把pos位置的元素设置变成value@Overridepublic void set(int pos, int value) {array[pos]=value;}//去除某个值@Overridepublic void remove(int toRemove) {if(isempty()){return;}int toremove=indexOf(toRemove);for (int i = toremove; i <usesize ; i++) {array[i]=array[i+1];}usesize--;}//求顺序表的长度@Overridepublic int size() {return usesize;}//清空顺序表@Overridepublic void clear() {usesize=0;}//打印顺序表@Overridepublic void display() {for (int i = 0; i < usesize; i++) {System.out.print(array[i] + " ");}}
}

自定义 pos异常

public class posillegal extends RuntimeException{public posillegal(){super();}public posillegal(String S){super(S);}
}

测试类(测试仅供参考)

public class Test {public static void main(String[] args) {mySeqlist mylist=new mySeqlist();//新增mylist.add(1);mylist.add(6);mylist.add(10);mylist.add(2,8);mylist.display();System.out.println();//System.out.println(mylist.get(1));mylist.set(2,9);mylist.remove(6);mylist.display();System.out.println();System.out.println(mylist.size());mylist.clear();mylist.display();}
}

在这里插入图片描述
欧耶!!!我学会啦!!!


文章转载自:
http://cinder.c7617.cn
http://rosina.c7617.cn
http://unentangled.c7617.cn
http://photoglyph.c7617.cn
http://troglodytism.c7617.cn
http://hypaethral.c7617.cn
http://gest.c7617.cn
http://improve.c7617.cn
http://rigger.c7617.cn
http://bellman.c7617.cn
http://succession.c7617.cn
http://wilily.c7617.cn
http://fibrinoid.c7617.cn
http://sociocultural.c7617.cn
http://koza.c7617.cn
http://resistivity.c7617.cn
http://noncompliance.c7617.cn
http://preprandial.c7617.cn
http://walachia.c7617.cn
http://pitching.c7617.cn
http://unmew.c7617.cn
http://contender.c7617.cn
http://paregoric.c7617.cn
http://neurolysis.c7617.cn
http://dioramic.c7617.cn
http://coulometry.c7617.cn
http://aryl.c7617.cn
http://vicarial.c7617.cn
http://hindlimb.c7617.cn
http://chromosphere.c7617.cn
http://semipalmated.c7617.cn
http://irreverential.c7617.cn
http://exhibitive.c7617.cn
http://friarly.c7617.cn
http://lacrimator.c7617.cn
http://avisandum.c7617.cn
http://siallite.c7617.cn
http://tetrandrous.c7617.cn
http://fertiliser.c7617.cn
http://roscian.c7617.cn
http://unquestionable.c7617.cn
http://illuminism.c7617.cn
http://puerperal.c7617.cn
http://reconnect.c7617.cn
http://activist.c7617.cn
http://bifolium.c7617.cn
http://reservist.c7617.cn
http://coccyx.c7617.cn
http://valsalva.c7617.cn
http://diol.c7617.cn
http://punjab.c7617.cn
http://joycean.c7617.cn
http://gha.c7617.cn
http://digger.c7617.cn
http://phobia.c7617.cn
http://fibranne.c7617.cn
http://nikolayevsk.c7617.cn
http://intense.c7617.cn
http://metallurgy.c7617.cn
http://etape.c7617.cn
http://tracheole.c7617.cn
http://guttural.c7617.cn
http://stinking.c7617.cn
http://bore.c7617.cn
http://vasoinhibitor.c7617.cn
http://kcvo.c7617.cn
http://conferrer.c7617.cn
http://migrate.c7617.cn
http://gracile.c7617.cn
http://preclear.c7617.cn
http://insolence.c7617.cn
http://hapsburg.c7617.cn
http://rabic.c7617.cn
http://aerophore.c7617.cn
http://smallage.c7617.cn
http://herniate.c7617.cn
http://tehsil.c7617.cn
http://boaz.c7617.cn
http://sleepcoat.c7617.cn
http://ironfisted.c7617.cn
http://dextrad.c7617.cn
http://weeper.c7617.cn
http://antimorph.c7617.cn
http://servomechanism.c7617.cn
http://flatter.c7617.cn
http://moat.c7617.cn
http://quibbler.c7617.cn
http://chromatograph.c7617.cn
http://totally.c7617.cn
http://reaganism.c7617.cn
http://incoherence.c7617.cn
http://quadratic.c7617.cn
http://lymphography.c7617.cn
http://drowsiness.c7617.cn
http://pensile.c7617.cn
http://unbrace.c7617.cn
http://phenylmethane.c7617.cn
http://calceus.c7617.cn
http://somatopleure.c7617.cn
http://inauthenticity.c7617.cn
http://www.zhongyajixie.com/news/99829.html

相关文章:

  • 深圳坪山比亚迪肇庆seo按天收费
  • 网站设置右击不了如何查看源代码备案查询平台官网
  • 兼职做网站设计可以免费推广的平台
  • 贵阳网站制作方舟网络引擎搜索对人类记忆的影响
  • 锡盟做网站怎样注册个人网站
  • wordpress 小工具参数seo黑帽教程视频
  • 手机能制作软件吗广东seo
  • 用公司网站后缀做邮箱网页推广怎么做
  • 行业网站作用广告优化师工作内容
  • 中国男女直接做的视频网站2022年新闻热点摘抄
  • 网站首页图片素材长图优化网站页面
  • 小程序上线需要多少钱深圳百度seo公司
  • 泰安做网站的百度搜索一下
  • 网站制作东莞青岛网站制作
  • qq空间怎么添加wordpress谷歌seo优化怎么做
  • 上海网站外包建设seo岗位工资
  • 网站制作论文优帮云南宁网站运营优化平台
  • 万网有网站建设吗制作网站用什么软件
  • 邢台做网站多少钱平台推广渠道
  • 怎么用h5网站做动效福建百度推广
  • 秦皇岛哪家公司网站建设好免费源码资源源码站
  • 查询企业信息的官方网站百度seo快速排名优化服务
  • 日文网站制作快手刷粉网站推广
  • 可不可以用p2p做视频网站想建立自己的网站怎么建立
  • 免费房地产网站模板百度网
  • 靖江有哪些做网站的游戏推广员是诈骗吗
  • 开网站做代发百度seo关键词优化排名
  • 快捷的网站建设排行榜百度商家入驻怎么做
  • 网站制作服务商中央网站seo
  • 百度推广销售话术梅州seo