线性表改变动态数组尺寸的代码及注释
时间: 2024-09-29 17:06:50 浏览: 28
数据结构实验代码线性表的基本操作.rar
线性表中的动态数组是一种可以自动调整大小的数据结构,通常用于实现如ArrayList这样的数据容器。在Java中,我们可以使用ArrayList作为例子。以下是创建、修改以及扩展线性表的代码,并附带了一些注释:
```java
import java.util.ArrayList;
public class DynamicArrayExample {
// 创建一个ArrayList实例,它会自动管理容量
private ArrayList<String> list = new ArrayList<>();
// 添加元素到列表末尾,如果已满则自动扩容
public void add(String element) {
list.add(element); // 如果需要,这里可能会触发扩容操作,ArrayList的底层采用动态数组实现
// 如果内部数组不够大,容量会被翻倍并分配新的内存空间
// 新增的元素会被插入到列表末尾
}
// 扩展数组长度,例如增加5个空位
public void resize(int newSize) {
if (newSize > list.size()) { // 防止不必要的扩容,仅当需要更大的空间时才做处理
list.ensureCapacity(newSize); // 保证有足够的空间容纳更多元素
}
}
// 删除指定索引处的元素,可能会导致后续元素移动
public void removeElementAt(int index) {
if (index >= 0 && index < list.size()) {
list.remove(index); // 删除指定位置的元素
} else {
System.out.println("Index out of bounds");
}
}
// 示例:展示如何使用以上方法
public static void main(String[] args) {
DynamicArrayExample array = new DynamicArrayExample();
for (int i = 0; i < 10; i++) {
array.add("Element " + i);
}
array.resize(20); // 扩容
array.removeElementAt(5); // 删除某个元素
}
}
```
阅读全文