javaプログラミングの基礎の行列
2556 ワード
最も一般的なデータ記憶構造は配列であり、配列検索が便利であるが、削除が面倒で、挿入が面倒で、サイズが固定されている.必要な配列の長さが変わる場合があります.この場合は配列行列を使います.
配列行列の本質はやはり配列であり、配列の動的な添削を一つのクラスにカプセル化するだけで、添削の本質はまだ二つの配列の間のコピーである.
下のコードは、行列の増加、削除、変更、検索を実現します.
配列行列の本質はやはり配列であり、配列の動的な添削を一つのクラスにカプセル化するだけで、添削の本質はまだ二つの配列の間のコピーである.
下のコードは、行列の増加、削除、変更、検索を実現します.
package array;
public class test1 {
private Object[] array;
private int length;
public int size(){
return length;
}
//
public void create(){
array=new Object[10];
for(int i=0;i<10;i++){
array[i]=i;
length++;
}
}
//
public void add(Object data){
Object []array1=new Object[length+1];
for(int i=0;i<length;i++){
array1[i]=array[i];
}
array1[length]=data;
array=array1;
length++;
}
//
public void insert(int index ,Object data){
if(index>=0&&index<length){
Object []array1=new Object[length+1];
for(int i=0;i<index;i++){
array1[i]=array[i];
}
array1[index]=data;
for(int j=index+1;j<length;j++)
{
array1[j]=array[j-1];
}
array=array1;
}
else
{
System.out.println(" error");
}
}
//
public void delData(Object data){
Object []array1=new Object[length-1];
int k=0;
for(int i=0;i<length;i++){
if(array[i]==data){
}
else
{
array1[k]=array[i];
k++;
}
}
length--;
array=array1;
}
//
public void delIndex(int index){
if(index>=0&&index<length)
{
Object []array1=new Object[length-1];
for(int i=0;i<index;i++)
{
array1[i]=array[i];
}
for(int j=index+1;j<length;j++)
{
array1[j-1]=array[j];
}
length--;
array=array1;
}
else
{
System.out.println("error");
}
}
//
public void travel(){
for(int i=0;i<length;i++){
System.out.println(array[i]);
}
}
public static void main(String[] args) {
test1 test=new test1();
test.create();
test.delData(3);
test.insert(0, 100);
test.delIndex(8);
test.travel();
}
}