我的代码:
package ypj;
import java.util.*;
import java.lang.Math;
public class yupeijie_Seq {
/**
* @param args
*/
public int []data;
public int yupeijie_length;
final int Maxsize=1024;
public yupeijie_Seq(){
data=new int[1024];
this.yupeijie_length=0;
}
public void yupeijie_in(){//输入随机数
for(int i=0;i<10;i++){
this.data[i]=(int)(Math.random()*100);
this.yupeijie_length++;
}
}
public void out(){//输出
for(int i=0;i<this.yupeijie_length;i++)
System.out.println(this.data[i]);
}
public int getLength(){//获得长度
return this.yupeijie_length;
}
public void insert(yupeijie_Seq s1,int element){//在表尾插入元素
if(this.yupeijie_length>this.Maxsize-1)
System.out.println("顺序表已满");
else{
this.data[yupeijie_length]=element;
this.yupeijie_length++;
}
}
public void insertt(int index,int element){//按索引插入元素
if(index<0||index>=this.yupeijie_length){
System.out.println("无此位置");
}
if(index>this.Maxsize-1){
System.out.println("已满");
}
for(int i=this.yupeijie_length-1;i>=index;i--){
this.data[i+1]=this.data[i];
}
this.data[index]=element;
this.yupeijie_length++;
}
public void delete(int index){//删除元素
if(this.yupeijie_length<1)
System.out.println("表空");
if(index<0||index>=this.yupeijie_length)
System.out.println("无此位置");
for(int i=index;i<this.yupeijie_length;i++){
this.data[i]=this.data[i+1];
}
this.yupeijie_length--;
}
public void modify(int index,int element){//修改元素
this.data[index]=element;
}
public int cha(int index){//按索引查找元素
return this.data[index];
}
public void search(int element){//按元素值查找元素
for(int i=0;i<this.yupeijie_length;i++)
if(this.data[i]==element)
System.out.println(i);
}
public void sort(){//排序
for(int i=0;i<this.yupeijie_length;i++){
int min=i;
for(int j=i;j<this.yupeijie_length;j++)
if(this.data[j]<this.data[min])
min=j;
if(i!=min){
int temp=this.data[i];
this.data[i]=this.data[min];
this.data[min]=temp;
}
}
}
public void merge(yupeijie_Seq s){//合并
int j=0;
for(int i=this.yupeijie_length;i<this.yupeijie_length+s.yupeijie_length-2;i++)
this.data[i]=s.data[j++];
this.yupeijie_length=this.yupeijie_length+s.yupeijie_length;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
yupeijie_Seq s1=new yupeijie_Seq();
s1.yupeijie_in();
//s1.out();
System.out.println("1 插入元素");
System.out.println("2 删除元素");
System.out.println("3 修改元素");
System.out.println("4 查找元素");
System.out.println("5 合并顺序表");
System.out.println("6 排序");
System.out.println("7 顺序表长度");
int l=0;
while(l<10){
Scanner in = new Scanner(System.in);
int a = in.nextInt();
if(3<5){
switch(a){
case 1:
System.out.println("请输入插入的元素:");
Scanner in1= new Scanner(System.in);
int b = in1.nextInt();
System.out.println("请输入插入元素的位置:");
int c = in.nextInt();
s1.insertt(c,b);
s1.out();
break;
case 2:
System.out.println("请输入要删除元素的位置:");
Scanner in2= new Scanner(System.in);
int d=in2.nextInt();
s1.delete(d);
s1.out();
break;
case 3:
System.out.println("请输入修改元素的位置:");
Scanner in3=new Scanner(System.in);
int e=in3.nextInt();
System.out.println("请输入修改元素的值:");
Scanner in4=new Scanner(System.in);
int f=in4.nextInt();
s1.modify(e, f);
s1.out();
break;
case 4:
System.out.println("请输入要查找的元素:");
Scanner in5=new Scanner(System.in);
int g=in5.nextInt();
s1.search(g);
break;
case 5:
yupeijie_Seq s2=new yupeijie_Seq();
s2.yupeijie_in();
s1.merge(s2);
s1.out();
break;
case 6:
s1.sort();
s1.out();
break;
case 7:
s1.getLength();
break;
}
}
}
}
}