Java——信息的插入删除
package nn; import java.util.*; public class Arr1 { Scanner input =new Scanner(System.in); int [] a =new int [100]; String kk=\"y\";
int i,n=0,n1=0,pos1=0,pos2=0;
public void menu(){ do{ System.out.println(\"========1、信息输入 2、信息插入信息查找 5、显示信息==========\\n\"); System.out.printf(\"请选择:(1~5)\"); int ss=input.nextInt(); switch(ss){ case 1: doing();break; case 2:
charu();break; case 3: shanchu();break; case 4: chazhao();break;
case 5: System.out.println(\"数组中的数据是是:\\n\"); for(i=0;i default: System.out.println(\"您输入有误!!!\"); } System.out.printf(\"是否继续?《y/n》\"); kk=input.next(); }while(kk.equals(\"y\")); } public void doing(){//输入信息,可以重复输入 System.out.printf(\"请输入数字的个数:\\n\"); n=input.nextInt(); System.out.printf(\"请输入数字:\\n\"); for(i=n1;i } n1=n+n1; } } \"); public void charu(){//插入信息,从最后面的元素后移 System.out.printf(\"请输入要插入的数字:\\n\"); int p1=input.nextInt(); System.out.printf(\"请输入插入的位置:\\n\"); int k1=input.nextInt(); for(int j=n1;j>=k1-1;j--){ a[j+1]=a[j]; } a[k1-1]=p1; n1++; public void shanchu(){//删除信息,从当前一个位置前移 System.out.printf(\"请输入要删除的数字:\\n\"); int p2=input.nextInt(); for(i=0;i } if(pos1==0){ System.out.println(\"未找到该数字!!!\"); } } public void chazhao(){//查找信息 int k3=0; int low=0,mid = 0,higt=n1-1; System.out.printf(\"请输入要查找的数字:\\n\"); int p3=input.nextInt(); while(low<=higt){//折半查找 mid=(low+higt)/2; if(a[mid]==p3){ k3=mid+1; System.out.println(\"要查找的数字是:\\n\"+a[mid]+\"在第\"+k3+\"个位置 pos2=1; break; } } } else if(a[mid]>p3){ higt=--mid; } else { } } if(pos2==0) System.out.println(\"未找到该数字!!\"); low=++mid; package nn; public class Arr1Test { /** } * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Arr1 arr1=new Arr1(); arr1.menu(); } 因篇幅问题不能全部显示,请点此查看更多更全内容