线性结构顺序结构数组增删改查代码
时间: 2024-12-02 15:13:08 浏览: 12
线性结构是一种数据组织形式,其中元素按照一定的顺序排列,并可通过索引直接访问。常见的线性结构有顺序表(数组)和链表。顺序结构如数组,它的基本操作包括增删改查:
**数组**(一维数组):
- **插入(增加)**: 向数组末尾添加新元素,若已满需要扩容。例如在Java中:
```java
public void insert(int index, int value) {
if (index < 0 || index > size) throw new IndexOutOfBoundsException();
System.arraycopy(arr, index, arr, index + 1, size - index);
arr[index] = value;
size++;
}
```
- **删除(减少)**: 删除指定位置的元素,通常会将后面的元素前移一位。Java示例:
```java
public void remove(int index) {
if (index < 0 || index >= size) throw new IndexOutOfBoundsException();
for (int i = index; i < size - 1; i++) {
arr[i] = arr[i + 1];
}
size--;
}
```
- **修改(更新)**: 直接访问指定索引处的元素并更新。例如:
```java
public void update(int index, int newValue) {
if (index < 0 || index >= size) throw new IndexOutOfBoundsException();
arr[index] = newValue;
}
```
- **查询(查找)**: 查找特定索引处的元素。例如:
```java
public int get(int index) {
if (index < 0 || index >= size) return -1; // 返回默认值或异常
return arr[index];
}
```
**注意:** 这些操作的时间复杂度通常是O(n),因为涉及到元素移动。对于频繁增删的操作,链表可能会更高效。
阅读全文