二 有序数组

Posted Heaven of freedom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二 有序数组相关的知识,希望对你有一定的参考价值。

在昨天数组类的基础上,在插入数据时进行排序操作。

 

源代码:

 

package array;

public class MyorderArray {
private int[] array; //创建数组
private int element; //有效数据长度

public MyorderArray() {
// TODO Auto-generated constructor stub
array = new int[50];
}
public MyorderArray(int Maxsize) //重载构造方法
{
array = new int[Maxsize];
}

public void insert(int value) //插入数据
{
int i;
for(i=0;i<element;i++) //找到要插入的点
{
if(array[i]>value)
{
break;
}
}
for(int j=element;j>i;j--) //已经向后移了一个
{
array[j] = array[j-1];
}
array[i] = value;
element++;


}
public void display() //显示数据
{
int i;
System.out.print("[");
for(i=0;i<element;i++)
{
System.out.print(array[i]+" ");
}
System.out.println("]");
}

public void Search(int value) //按照数据找索引
{
int i;
for(i=0;i<element;i++)
{
if(array[i] == value)
break;
}
if(i == element)
System.out.println("error");
else
System.out.println(i);
}

public void searchB(int index) //按照索引找数据
{
if(index < 0 || index >element)
System.out.println("error");
else
System.out.println(array[index]);
}

public void delete(int index) //按照索引删除数据
{
if(index < 0 || index >element)
System.out.println("error");
else
{
for(int i=index;i<element;i++)
{
array[i] =array[i+1];
}
element--;
}
}

public void update(int index,int value) //更新数据
{
array[index] = value;
}
}

以上是关于二 有序数组的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode108 将有序数组转为二叉搜索树

通过有序数组生成平衡搜索二叉树

合并两个有序数组

LeetCode(108):将有序数组转换为二叉搜索树

将有序数组转换为二叉搜索树

将有序数组转换为二叉搜索树