博客
关于我
线型表的顺序存储结构----顺序表(学习笔记)
阅读量:489 次
发布时间:2019-03-07

本文共 1816 字,大约阅读时间需要 6 分钟。

定义一长度为80的链表,表中元素从1-80,实现对表的增、删、清0功能。

插入算法简介:

1 判断插入位置是否合理
2 把插入位置后面的元素向下移一位
3 把元素插到指定位置
4 链表长度加1

删除算法简介:

1 判断删除位置是否合理
2 把删除位置后面的元素向上移一位
3 链表长度减1

查找算法简介:

1 用for循环和equals()方法判断目标值与数组元素是否相等
2 如果相等返回一个数组元素的索引值

实现代码如下:

ListIntf接口

public interface ListIntf {   public int size();  //获取链表长度public void clear();  //清空链表public boolean isEmpty(); //判断是否为空表public Object get(int i); //获取i位置的元素public int indexOf(Object obj); //获取元素的索引位置public Object getPre(Object obj);// 获取前驱元素public Object getNext(Object obj);//获取后驱元素public void insertElementAt(Object obj,int i);//插入元素public Object remove(int i);//移除元素public Object remove(Object obj);//移除元素}

继承ListIntf接口的Sqlist程序:

public class Sqlist implements ListIntf{   	final int maxlen=100;	int len=80;	int num[]=new int[100];		public Sqlist() {      //构造方法		for(int i=0;i
len) { System.out.println("插入位置不对"); }else { for(int j=len;i
len) { System.out.println("插入位置不对"); }else { for(int j=i-1;j

运行结果:

数值是16的索引值是16--------------我是分割线-----------索引16位置前驱元素是15--------------我是分割线-----------索引16位置后驱元素是17--------------我是分割线-----------索引16位置的元素是17--------------我是分割线-----------在80索引处插入81,链表为123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081--------------我是分割线-----------移除索引1的值,链表为23456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081--------------我是分割线-----------移除数值是81的值,链表为234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980--------------我是分割线-----------清空表:0000000000000000000000000000000000000000000000000000000000000000000000000000000

转载地址:http://uhwcz.baihongyu.com/

你可能感兴趣的文章
Mysql 整形列的字节与存储范围
查看>>
mysql 断电数据损坏,无法启动
查看>>
MySQL 日期时间类型的选择
查看>>
Mysql 时间操作(当天,昨天,7天,30天,半年,全年,季度)
查看>>
MySQL 是如何加锁的?
查看>>
MySQL 是怎样运行的 - InnoDB数据页结构
查看>>
mysql 更新子表_mysql 在update中实现子查询的方式
查看>>
MySQL 有什么优点?
查看>>
mysql 权限整理记录
查看>>
mysql 权限登录问题:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
查看>>
MYSQL 查看最大连接数和修改最大连接数
查看>>
MySQL 查看有哪些表
查看>>
mysql 查看锁_阿里/美团/字节面试官必问的Mysql锁机制,你真的明白吗
查看>>
MySql 查询以逗号分隔的字符串的方法(正则)
查看>>
MySQL 查询优化:提速查询效率的13大秘籍(避免使用SELECT 、分页查询的优化、合理使用连接、子查询的优化)(上)
查看>>
mysql 查询数据库所有表的字段信息
查看>>
【Java基础】什么是面向对象?
查看>>
mysql 查询,正数降序排序,负数升序排序
查看>>
MySQL 树形结构 根据指定节点 获取其下属的所有子节点(包含路径上的枝干节点和叶子节点)...
查看>>
mysql 死锁 Deadlock found when trying to get lock; try restarting transaction
查看>>