线性表(linear list)是n个具有相同特性的数据元素的有限序列。保存元素的集合是一个具有相同数据类型的集合,元素之间的排列呈直线,因此将这种数据结构称为线性表。常见的线性表:数组,链表,栈,队列,字符串。
线性表满足两个条件:1.保存在这个结构中的元素都是相同的数据类型。2.元素之间线性排列,元素和元素之间逻辑上是连续的!索引为0的元素一定是"逻辑"上在索引为1的元素之间。
本人理解:线性表有一个特点,就是由明确的索引下标的概念。(例如二叉树就是一个非线性结构)
线性表是一个比较抽象的概念,具体的实现有很多,数组,链表,栈,队列,String都是具体的线性表。
Java接口优先原则,无论具体是哪种线性表,操作的方法应该对外都是统一的~~
接口定义了所有实现子类所共同应当具备行为和规范。
JDK中线性表的接口称为List接口,无论是数组实现还是链表实现,操作线性表的方法都已经在List接口中定义好了。
List接口中常用的方法 数据结构无外乎元素的CURD(增删改查)
在接口中定义的这些方法,无论哪个具体子类都需要实现方法
更换具体子类,使用的方法完全不变。