《数据结构与算法》学习笔记19 递归_二分查找

来源:互联网 发布:广西水利造价软件 编辑:程序博客网 时间:2024/06/05 13:56
public class Array {  private long[] a;  private int elems;  public Array(int size){   a=new long[size];  elems=0;  }  public boolean find(long value){ int i=0; for(i=0;i<elems;i++){ if(a[i]==value)  System.out.println(i);} if(i==elems) return false; else return true;  }    public void insert(long value) {  int i=0;  for(i=0;i<elems;i++)  if(value<a[i])  break;  for(int k=elems;k>i;k--)  a[k]=a[k-1];  a[i]=value;  elems++;  }    public void delete(int x){  for(int i=x;i<elems-1;i++){  a[i]=a[i+1];  }  elems--;  }    public void display(){for(int i=0;i<elems;i++){System.out.println(i+":"+a[i]);}  }    public int getSize(){  return elems;  }    public int search(long data,int low,int up){      int middle;      middle=(up+low)/2;      if(a[middle]==data) {System.out.println(middle);return middle;}      else if(low>up)  return -1;      else if(a[middle]>data){    return search(data,low,middle-1);      }      else return search(data,middle+1,up);   }}

0 0
原创粉丝点击