package first;
public class List {
final int defalut = 5;
String data[];
int length = 0;
public List() {
this.data = new String[defalut];
}
public List(int size) {
this.data = new String[size];
}
public boolean insert(int position, String value) {
if(position<0 || position>data.length) {
System.out.println("输入的位置值错误!!!");
return false;
}
if(length >= data.length) {
System.out.println("线性表内的数据已满!!!");
return false;
}
for(int i=length-1; i>=position; i--) {
data[i+1] = data[i];
}
data[position-1] = value;
length++;
return true;
}
public boolean delete(int position) {
if(position<0 || position>length) {
System.out.println("输入的位置值错误!!!");
return false;
}
for(int i=position-1; i<length-1; i++) {
data[i] = data[i+1];
}
length--;
return true;
}
public boolean modify(int position, String value) {
if(position<0 || position>length) {
System.out.println("输入的位置值错误!!!");
return false;
}
data[position-1] = value;
return true;
}
public String query(int position) {
return data[position-1];
}
public int size() {
return length;
}
public void print() {
for(int i=0; i<length; i++) {
System.out.println(i + ": " + data[i]);
}
System.out.println();
}
public static void main(String[] args) {
List list = new List();
list.insert(1, "1");
list.insert(2, "2");
list.insert(3, "3");
list.insert(4, "4");
list.insert(5, "5");
list.print();
list.delete(2);
list.print();
list.modify(4, "modify");
list.print();
System.out.println("query: " + list.query(4));
System.out.println("size: " + list.size());
}
}
运行结果:
0: 1
1: 2
2: 3
3: 4
4: 5
0: 1
1: 3
2: 4
3: 5
0: 1
1: 3
2: 4
3: modify
query: modify
size: 4
线性表的简单实现
最新推荐文章于 2023-01-09 21:49:19 发布