有序顺序表的插入java
时间: 2024-09-19 09:03:09 浏览: 52
在Java中,有序顺序表(通常是指数组或者基于数组的List结构,如ArrayList)的插入操作一般需要考虑保持原有的排序顺序。这里以插入一个元素到已排序的ArrayList为例:
```java
import java.util.ArrayList;
public class OrderedArrayList {
private ArrayList<Integer> list; // 存放整数的列表
public OrderedArrayList() {
this.list = new ArrayList<>();
}
// 添加元素并保持排序
public void insert(int value) {
if (list.isEmpty()) { // 如果列表为空,直接添加
list.add(value);
} else if (value <= list.get(list.size() - 1)) { // 如果新值小于等于最后一个元素
list.add(value); // 直接添加到末尾
} else { // 否则从头开始遍历,找到合适的位置插入
for (int i = 0; i < list.size(); i++) {
if (value > list.get(i)) {
list.add(i, value); // 插入到找到的第一个大于新值的位置
break;
}
}
}
}
// 示例如何使用
public static void main(String[] args) {
OrderedArrayList ol = new OrderedArrayList();
ol.insert(5); // 插入5
ol.insert(2); // 插入2,会先于5
ol.insert(7); // 插入7,会插入到5之后
}
}
```
阅读全文