顺序表详解——遍历、增添、查找、删除、修改、清除

1.线性表与顺序表

线性表是指具有相同性质的元素组成的有限序列,由N个成员组成一个整体的数据结构,常见的线性表由:顺序表、链表、栈、队列、还有字符串.

线性表在逻辑上,是连续的,在物理结构上,不一定是连续的,他们开辟的物理空间之间不是彼此相连的,相互存在间隙。线性表储存是通常以数组和链式结构储存。

顺序表属于线性表,他开辟的物理空间是连续的,其底层逻辑就是数组,但是顺序表的逻辑实现是通过类来完成
相对于对普通的数组进行操作,顺序表显得更高级

  • 可以扩容。顺序表在数组的基础上,当顺序表容量满了,可以自动实现扩大容量的功能,一般都是按原来比例的二倍进行扩容。

注意: Java提供的顺序表在开辟的阶段,如果未给出指定的容量capacity默认为零,其源码为:

    public ArrayList() {
      this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA;
  }    

   //而DEFAULTCAPACITY_EMPTY_ELEMENTDATA起始大小为零,当第一次add的时候,系统给出的默认大小为十。
  • 知晓有效元素的个数。数组给定容量后,只能查看总容量,也就是给定的大小,不能知晓有效元素的个数。就是当给定大小的数组为十个int类型的大小时,而数组里有效的数字只有一个int类型的元素。数组是无法判断这个大小只有一个int类型的大小。而顺序表中的有效元素size可以判断顺序表中的有效数字有多少。

所以可以把数组的功能当作顺序表功能的子集。

注意事项: 顺序表中的容量(capacity)和元素个数(size)的区别
顺序表的容量相当于数组的指定大小,元素个数size相当于该指定大小的空间中有效利用的空间中元素的个数

2.打印顺序表

//遍历顺序表,并打印
    public void display(){
        //usedSize==0
        for (int i = 0; i < this.usedSize; i++) {
            System.out.println(this.elem[i]+" ");
        }
        System.out.println();
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值