`
smallearth
  • 浏览: 34602 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

线性表合并

 
阅读更多

类一

数组合并,但是数组又不能越界,为了节省内存,新建一数组用来合并数组,然后再赋值给要合并的数组

package org.se;
//线性表合并
public class arithMetic11 {
public static int[] la={1,5,4};//用数组代替线性表
public static int[] lb={4,6,45,56,7,8,9};
public static int la_len;//获取数组长度
public static int lb_len;



public arithMetic11() {
Init();
// TODO Auto-generated constructor stub
}

public void Init() //初始化数据
{
la_len=la.length;//获取数组长度
lb_len=lb.length;
}
public void ListInsert() //实现插入数据
{
int a;//用来储存lb中元素


for(int i=0;i<lb.length;i++)
{
a=lb[i];

if(!(LocateElem(a)))//判断la是否有等于a的元素
{
int [] text=new int[++la_len]; //定义新的数组
//System.out.println(la_len); //text=la;如果这样赋值,则text的长度和la的长度一样
for(int j=0;j<la_len-1;j++)
{
//System.out.println(la_len);
text[j]=la[j]; //将la复制给text
}

text[la_len-1]=a;//将a放在新数组最后位置
for(int x=0;x<la_len;x++)
{
GetElem(text);
//System.out.println(la_len);
System.out.println("la["+x+"]..."+la[x]);
}
}
}
}
static boolean LocateElem(int e)//判断la是否有等于a的元素
{
boolean b=true; //判断la是否有等于a的元素
for(int j=0;j<la.length;j++)
{
if(e!=la[j])
{
b=false;
}
else
{
b=true;
}
}
return b;
}

public void GetElem(int[] p) //将新数组再赋值给la
{
la=null;
la=p;
}
}


类二

package org.se;


public class test {


static arithMetic11 am;

public static void main(String[] args) {
am=new arithMetic11();
am.ListInsert();
// TODO Auto-generated method stu
}
}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics