package com.ghg.data_structure.test;
import java.util.Arrays;
public class Test1 {
static int length = 0;
public static void main(String[] args) {
int[] arr = new int[10];
for (int i = 0; i < 5; i++) {
arr[i] = i;
}
/**
* 元素長度
*/
length = 5;
System.out.println(Arrays.toString(arr));
insert(arr, 5, 18);
System.out.println(Arrays.toString(arr));
delete(arr, 1);
delete(arr, 3);
System.out.println(Arrays.toString(arr));
}
/**
* 在第i個位置插入元素
*
* @param arr
* @param i
* @param num
*/
public static void insert(int[] arr, int i, int num) {
if (length == arr.length) {
System.out.println("數(shù)組滿了");
}
if (arr.length == 0) {
System.out.println("數(shù)組為完");
return;
}
if (i < 0 || i > arr.length) {
System.out.println("i 位置不正確 " + i + " 數(shù)組的長度 " + arr.length);
return;
}
/**
* 元素后移
*/
for (int k = length-1; k >= i - 1; k--) {
arr[k + 1] = arr[k];
}
//插入元素
arr[i - 1] = num;
length++;
}
/**
* 刪除元素
*
* @param arr
* @param i
*/
public static void delete(int[] arr, int i) {
if (arr.length == 0) {
System.out.println("數(shù)組為完");
return;
}
if (i < 0 || i > arr.length) {
System.out.println("i 位置不正確 " + i + " 數(shù)組的長度 " + arr.length);
return;
}
for (int k = i; k < arr.length; k++) {
arr[k - 1] = arr[k];
}
length--;
}
}
結(jié)果;
[0, 1, 2, 3, 4, 0, 0, 0, 0, 0]
[0, 1, 2, 3, 18, 4, 0, 0, 0, 0]
[1, 2, 18, 4, 0, 0, 0, 0, 0, 0]