数据结构---列表

1.列表

在基础数据结构中,列表作为最为基础的一个数据结构进行体现。

2.列表的模型
在这里插入图片描述
3.基本算法

1.增加元素(在头部/尾部/其余地方)	
2.删除元素(在头部/尾部/其余地方)
3.扩容/缩容
4.获取有效长度
5.判断列表是否为空
6.获取某位置元素(头部/尾部/其余地方)
7.改变某位置的元素
8.寻找元素,返回下标。
9.列表是否包含某元素
10.获取容积
11.清除列表
12.交换列表中两位置的元素
13.重写toString方法

4.实现方法

一,顺序列表
在这里插入图片描述
使用数组Date[ ]实现。

  1. 增加元素

    在头部增加,尾部增加,中间增加。

  2. 删除元素

    在头部删除,尾部删除,中间删除。

  3. 扩容/缩容

    -数组中增加元素时,数组已满,则需要扩容。
    -数组中删除元素时,一般删除到数组长度的四分之一时,一般将数组的长度删除到原来的一半。则需要缩容。

  4. 获取有效长度

    获取数组的有效长度。

  5. 判断列表是否为空

    获取数组的有效长度是否为0。

  6. 获取末位置元素

    获取数组的有效长度-1的位置的元素。

  7. 改变某位置的元素

    根据数组的下标改变某下标的元素。

  8. 寻找元素

    循环遍历数组判断元素是否相等。返回其下标。

  9. 列表是否包含某元素

    和寻找元素一样,循环遍历数组判断元素是否相等。

  10. 获取容积

    获取数组的总长度。

  11. 清除列表

    -数组的有效长度size是标记数组某位置是否存在元素。
    -直接将size置0。

  12. 交换列表中两位置的元素

    在数组中交换两位置之间的元素。

  13. 重写toString方法

    重新拼接字符串。打印输出。

代码:

public class ArrayList<E> implements List<E>{
	private E[] data;	//容器-存储元素 data.length 最大容量
	private int size;	//当前列表中元素的个数 有效长度
	private static final int DEFAULT_CAPACITY=10;
	public ArrayList(){	//默认构造函数中创建一个容量为10的列表
		this(DEFAULT_CAPACITY);
	}
	public ArrayList(int capacity){	//构造函数中创建一个容量为capacity的列表
		if(capacity<0){
			capacity=DEFAULT_CAPACITY;
		}
		this.data=(E[]) new Object[capacity];
		this.size=0;
	}
	//O(n)
	public void add(int index, E e) {	//增加元素
		if(index&
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值