
顺序表各种功能的实现
发布日期:2021-05-07 10:01:57
浏览次数:15
分类:精选文章
本文共 2548 字,大约阅读时间需要 8 分钟。
顺序表各种功能的实现
public class Demo09 { public static void main(String[] args) { MyArrayList myArrayList = new MyArrayList(); myArrayList.add(0,1); myArrayList.add(1,2); myArrayList.add(1,3); myArrayList.add(2,4); myArrayList.show();//打印顺序表 myArrayList.add(3,99); myArrayList.show(); System.out.println(myArrayList.key(99));//判断是否有key元素,true为有 System.out.println(myArrayList.keyNum(99));//输出key元素的位置 System.out.println(myArrayList.getPos(3));//输出pos下标的元素 myArrayList.replace(3,88);//替换pos位置的元素为val myArrayList.show(); myArrayList.del(88);//删除第一次出现的关键字key myArrayList.show(); System.out.println(myArrayList.getLegth());//获取长度 myArrayList.clear();//清空顺序表 myArrayList.show(); }}class MyArrayList{ //普通成员变量 public int[] elem; public int usedSize; //构造方法 public MyArrayList(){ this.elem = new int[1]; } //判断是否有key元素 public boolean key (int key){ for (int i = 0 ; i < this.usedSize; i++ ){ if(elem[i] == key){ return true; } } return false; } //输出key元素的下标 public int keyNum (int key){ for (int i = 0 ; i < this.usedSize; i++ ){ if(elem[i] == key){ return i; } } return -1; } //获取pos下标位置的元素 public int getPos(int pos){ if (pos<0||pos>=this.usedSize) { return -1; } return this.elem[pos]; } //替换pos位置的元素为val public void replace(int pos,int val){ if (pos<0||pos>=this.usedSize) { System.out.printf("pos不在范围内"); }else { this.elem[pos] = val; } } //删除第一次出现的关键字key public void del (int key){ for (int i = 0; i < this.usedSize; i++) { if(elem[i] == key){ for (;ithis.usedSize || pos<0){ return; } for (int i = this.usedSize-1;i >= pos ;i--){ elem[i+1] = elem[i]; } this.elem[pos] = data; this.usedSize++; } //扩容 public void expand(){ int[] tmp = new int[this.elem.length*2]; for (int i = 0 ;i < this.elem.length ; i++ ){ tmp[i] = this.elem[i]; } this.elem = tmp ; return ; } //打印顺序表 public void show(){ for (int i = 0; i < this.usedSize; i++) { System.out.print(this.elem[i] + " "); } System.out.println(); }}
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月09日 13时16分21秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
第一类曲面积分
2019-03-06
常数项级数
2019-03-06
Mybatis的介绍和基本使用
2019-03-06
Idea使用tool window中的persistence功能一键生成数据库实体
2019-03-06
Redis简介(数据结构,哨兵、集群和SpringDataRedis)
2019-03-06
jar包破解Idea
2019-03-06
MySQL锁机制
2019-03-06
软件设计模式修炼 -- 模板方法模式
2019-03-06
Java设置PPT幻灯片背景——纯色、渐变、图片背景
2019-03-06
Java 设置PDF文档浏览偏好
2019-03-06
Java 添加、替换、删除PDF中的图片
2019-03-06
C#中构造函数的作用
2019-03-06
Go 数组&切片
2019-03-06
Go 文件操作
2019-03-06
drf Serializer基本使用
2019-03-06
老Python总结的字典相关知识
2019-03-06
深入理解 ZK集群的Leader选举
2019-03-06
计算机的运算方法
2019-03-06
谈谈MySQL的基数统计
2019-03-06
大型面试现场:一条update sql执行都经历什么?
2019-03-06