【yes!!!做出来啦哈哈哈哈】
包含顺序表的插入和删除操作。
//基于线性表的相关基础操作自拟的一系列java代码
import java.util.Scanner;
public class basic {
//顺序表的初始化
public int[] List;
public int size;//定义表的初始固定大小
Scanner in = new Scanner(System.in);
public int Length = in.nextInt();//定义一个初始存入元素的个数
public basic() {
this(10);//若是未赋值,则将此值传给size
}
public basic(int size) {
List = new int[size];
for(int j=0;j<Length;j++) {
List[j]=j+1;
System.out.print(List[j]+" ");
}
System.out.print("\r");
}
//添加元素(暂时不作顺序表表长增加的处理方案)
void add(int ad,int e) {
if(ad==Length-1){//若是在表尾端插入
Length +=1 ;//则存储元素个数+1
List[Length-1]=e;
}
else if(ad==0){//若是放在表的最前面
Length +=1 ;//则存储元素个数+1
for(int i=Length-1;i>=0;i--) {
List[i+1]=List[i];
}
List[0]=e;
}
else {//或在中间位置
if(!((ad<0)||(ad>size-1))){
System.out.print("wrong");
}else {
for(int i=Length-1;i>=ad;i--) {
List[i+1]=List[i];
}
}
List[ad]=e;
Length+=1;
}
for(int k=0;k<Length;k++) {
System.out.println(k+":"+List[k]);
}
}
//删除元素
void delete(int ad) {
if(ad==Length-1) {//若是删除表尾元素
Length--;
size--;
// List[ad]=(Integer) null;
}
else if(ad==0) {//若是删除表头元素
Length--;//则存储元素个数-1
for(int i=0;i<Length;i++) {
List[i]=List[i+1];
}
size--;
}
else {//若是删除表中元素
if(!((ad<0)||(ad>size-1))){
System.out.print("wrong");
}else {
for(int i=ad;i<Length-1;i++) {
List[i]=List[i+1];
}
}
Length--;
size--;
}
for(int k=0;k<Length;k++) {
System.out.println(k+":"+List[k]);
}
}
//
public static void main(String[] args) {
basic b = new basic();
b.add(2,5);
b.delete(2);
}
}