Compare commits
No commits in common. "744b5b82cd58ba46963e07a9c393c09152e5600c" and "fc51e1123bc4e9adf8bbec418b44178a55cefcfb" have entirely different histories.
744b5b82cd
...
fc51e1123b
|
@ -1,12 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
|
|
||||||
<groupId>org.example</groupId>
|
|
||||||
<artifactId>data_structure</artifactId>
|
|
||||||
<version>1.0-SNAPSHOT</version>
|
|
||||||
|
|
||||||
|
|
||||||
</project>
|
|
|
@ -1,95 +0,0 @@
|
||||||
package sort;
|
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Sawyer
|
|
||||||
* @date 2022/7/21
|
|
||||||
*/
|
|
||||||
public class MyArr {
|
|
||||||
private int[] elements;
|
|
||||||
|
|
||||||
public MyArr() {
|
|
||||||
elements = new int[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取数组长度
|
|
||||||
* @return 返回数组长度
|
|
||||||
*/
|
|
||||||
public int size(){
|
|
||||||
return elements.length;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 往数组末尾添加一个元素
|
|
||||||
* @param element 新元素
|
|
||||||
*/
|
|
||||||
public void add(int element){
|
|
||||||
int[] newArr = new int[elements.length+1];
|
|
||||||
System.arraycopy(elements, 0, newArr, 0, elements.length);
|
|
||||||
newArr[elements.length] = element;
|
|
||||||
elements = newArr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 打印元素列表
|
|
||||||
*/
|
|
||||||
public void show(){
|
|
||||||
System.out.println(Arrays.toString(elements));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 通过数组下标删除元素
|
|
||||||
* @param index 数组下标
|
|
||||||
*/
|
|
||||||
public void remove(int index){
|
|
||||||
checkIndex(index);
|
|
||||||
int[] newArr = new int [elements.length-1];
|
|
||||||
for (int i = 0; i <newArr.length ; i++) {
|
|
||||||
if(i < index){
|
|
||||||
newArr[i] =elements[i];
|
|
||||||
}else {
|
|
||||||
newArr[i] = elements[i+1];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
elements=newArr;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 通过下标获取元素
|
|
||||||
* @param index 数组下标
|
|
||||||
* @return 返回一个元素
|
|
||||||
*/
|
|
||||||
public int getElement(int index){
|
|
||||||
checkIndex(index);
|
|
||||||
return elements[index];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 通过指定下标添加元素
|
|
||||||
* @param index 数组下标
|
|
||||||
* @param element 元素
|
|
||||||
*/
|
|
||||||
public void insert(int index,int element){
|
|
||||||
checkIndex(index);
|
|
||||||
int[] newArr = new int[elements.length+1];
|
|
||||||
for (int i = 0; i <elements.length ; i++) {
|
|
||||||
if(i < index){
|
|
||||||
newArr[i] = elements[i];
|
|
||||||
}else {
|
|
||||||
newArr[i+1] = elements[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
newArr[index] = element;
|
|
||||||
elements=newArr;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private void checkIndex(int index){
|
|
||||||
if(index <0 || index>elements.length){
|
|
||||||
throw new RuntimeException("下标越界");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,21 +0,0 @@
|
||||||
package sort;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Sawyer
|
|
||||||
* @date 2022/7/21
|
|
||||||
*/
|
|
||||||
public class MyArrTest {
|
|
||||||
public static void main(String[] args) {
|
|
||||||
MyArr myArr = new MyArr();
|
|
||||||
myArr.add(1);
|
|
||||||
myArr.add(2);
|
|
||||||
myArr.show();
|
|
||||||
int count = myArr.getElement(0);
|
|
||||||
System.out.println(count);
|
|
||||||
myArr.size();
|
|
||||||
myArr.insert(0,22);
|
|
||||||
myArr.show();
|
|
||||||
myArr.remove(0);
|
|
||||||
myArr.show();
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue