1.数组实现线性表
public class LineList {
private static final int MAX_SIZE = 100;
private int[] data = new int[MAX_SIZE];
private int length;
public int getElement(int i) {
if (length == 0 || i < 0 || i > data.length - 1) {
throw new RuntimeException("");
}
return data[i];
}
public boolean insert(int i, int element) {
boolean success = false;
// 线性表已满
if (length == MAX_SIZE) {
return success;
}
// 插入位置不正确
if (i < 0 || i > length - 1) {
return success;
}
if (i < length) {
for (int j = length - 1; j > i - 1; j--) {
data[j + 1] = data[j];
}
data[i] = element;
success = true;
length++;
}
return success;
}
public void delete(int i) {
// 线性表为空
if (length == 0) {
return;
}
// i不在范围
if (i < 0 || i > length - 1) {
return;
}
for (int k = i; k < length; k++) {
data[k] = data[k + 1];
}
length--;
}
}
网友评论