设计一个有序顺序表 数据结构(java)

设计一个有序顺序表(元素已排序,递增或者递减。)实现插入,删除等操作,元素插入位置由其值决定。题目是这样的。求代码。。很急很急!!... 设计一个有序顺序表(元素已排序,递增或者递减。)
实现插入,删除等操作,元素插入位置由其值决定。
题目是这样的。求代码。。很急很急!!
展开
 我来答
wang_hai_jun
2010-03-24 · TA获得超过292个赞
知道小有建树答主
回答量:174
采纳率:100%
帮助的人:137万
展开全部
package array;

class OrderArray{
private long[] a;
private int nElems;

public OrderArray(int maxSize){
a = new long[maxSize];
nElems = 0;
}

public void insert(long value){
int pos = 0;
for(pos=0;pos<nElems;pos++){
if(a[pos]>value){
break;
}
}
for(int i=nElems;i>pos;i--){
a[i] = a[i-1];
}
a[pos] = value;
nElems++;
}

public boolean delete(long value){
int pos = find(value);
if(pos!=-1){
for(int i=pos;i<nElems;i++){
a[i] = a[i+1];
}
nElems --;
return true;
}
return false;
}

public int find(long keySearch){
int lowerBound = 0;
int upperBound = nElems-1;
int curIn = 0;
while(true){
curIn = (lowerBound+upperBound)/2;
if(a[curIn]==keySearch){
return curIn;
}else if(lowerBound>upperBound){
return -1;
}else{
if(a[curIn]>keySearch){
upperBound = curIn -1;
}else{
lowerBound = curIn +1;
}
}
}
}

public void display(){
for(int i=0;i<nElems;i++){
System.out.println(a[i]);
}
}
}

public class OrderArrayApp {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int maxSize = 100;
OrderArray orderArray = new OrderArray(maxSize);
orderArray.insert(1);
orderArray.insert(7);
orderArray.insert(9);
orderArray.insert(8);
orderArray.insert(6);
orderArray.insert(4);
orderArray.display();
orderArray.delete(8);
orderArray.display();
}

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ZESTRON
2024-09-04 广告
表界面分析在材料科学及化学领域占据核心地位,它深入探索物质表面与界面的微观结构、化学组成及相互作用。通过电商平台射线光电子能谱(电商平台PS)、扫描电子显微镜(SEM)及原子力显微镜(AFM)等先进技术手段,我们Dr. O.K. Wack ... 点击进入详情页
本回答由ZESTRON提供
白首功名
2010-03-24 · TA获得超过153个赞
知道小有建树答主
回答量:131
采纳率:100%
帮助的人:97.1万
展开全部
唉……
又是求作业的吧?建议还是自己动手的好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式