This commit is contained in:
Debucquoy
2023-05-05 13:02:58 +02:00
parent 23a079c89a
commit cac30ebbb1
14 changed files with 253 additions and 0 deletions

View File

@ -0,0 +1,9 @@
import java.util.Arrays;
public class AdditiveArrayList<T> extends MyArrayList<T>{
public void makeSpaceIfNeeded(){
if(T1.length == size){
T[] temp = Arrays.newInstance(size-1);
}
}
}

View File

@ -0,0 +1,54 @@
import java.util.ArrayList;
import java.util.Random;
public class ArrayListTest {
public static ArrayList<String> create(int n){
ArrayList<String> ret = new ArrayList<String>();
for (;n > 0 ; n--) {
String random_Word = "";
Random rand = new Random();
int str_size = rand.nextInt(1, 50);
for(int i =0; i < str_size; i++){
random_Word += (char) rand.nextInt(32, 126);
}
ret.add(random_Word);
}
return ret;
}
public static void add(ArrayList<String> l, String s){
l.add(s);
}
public static void empty(ArrayList<String> l){
l.clear();
}
public static void display(ArrayList<String> l){
System.out.print("[");
for (String e : l) {
System.out.print(e);
System.out.print(", ");
}
System.out.println("]");
}
public static void main(String[] args) {
ArrayList<String> a;
a = create(5);
display(a);
add(a, "The lazy brown fox jump over the lazy fence");
display(a);
empty(a);
display(a);
add(a, "The lazy brown fox jump over the lazy fence");
display(a);
}
}

View File

@ -0,0 +1,35 @@
import java.util.Arrays;
public abstract class MyArrayList<T> {
protected T T1[], temp[];
protected int size;
public int size(){
return size;
}
public int physicalSize(){
return T1.length + temp.length + size * Integer.SIZE;
}
public T get(int i){
return T1[i];
}
public void add(T o){
makeSpaceIfNeeded();
T1[size++] = o;
}
public void add(int i, T o){
makeSpaceIfNeeded();
temp = Arrays.copyOfRange(T1, i, size-1);
T1[i] = o;
for(int j = 1; j <= temp.length; j++){
T1[j + i] = temp[i];
}
size++;
}
abstract void makeSpaceIfNeeded();
}