LinkedListclass
属性
Node first
指向第一个节点
禁止为该属性创建 Getter Setter
Level 1 方法
void buildDemo()
强行构建对象, 使得调用后列表含有 6, 7, 3, 8, 4
方便之后调用其它方法时提供测试数据
样例
基于对象的如下状态
list:
<>
调用后
list.buildDemo()
list 应该是
<6, 7, 3, 8, 4>String description()
拼接字符串描述
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
String returned = list.description()
returned 应该是
"[6, 7, 3, 8, 4]"int size()
返回当前链表尺寸
样例
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.size()
returned 应该是
5boolean isEmpty()
返回当前链表是否为空
样例
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
boolean returned = list.isEmpty()
returned 应该是
falseLevel 2 方法
int get(int index)
返回第 index 个元素的值
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.get(1)
returned 应该是
7样例 2
针对超出合理范围的情况,一律返回 -1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.get(5)
returned 应该是
-1int lastValue()
返回最后一个值
样例
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.lastValue()
returned 应该是
4int indexOf(int value)
查找 value 值对应的结点的索引
如果有多个, 返回第一个
如果没有,返回 -1
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.indexOf(7)
returned 应该是
1样例 2
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.indexOf(9)
returned 应该是
-1boolean contains(int value)
查找链表内是否含有 value 这个值
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
boolean returned = list.contains(7)
returned 应该是
trueLevel 3 方法
void add(int value)
增加一个新的结点在链表末端, 值为 value
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
list.add(9)
list 应该是
<6, 7, 3, 8, 4, 9>void push(int value)
增加一个新的结点在链表末端, 值为 value
样例 1
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
list.push(9)
list 应该是
<6, 7, 3, 8, 4, 9>int pop()
删除一个在链表末端的结点, 并返回
样例
基于对象的如下状态
list:
<6, 7, 3, 8, 4>
调用后
int returned = list.pop()
returned 应该是
4
list 应该是
<6, 7, 3, 8>