Dynamic Array Visualization
Explore array operations with real-time visualization and step-by-step Java code visualization. Watch how elements are inserted, deleted, and searched in a dynamic array.
Array is empty. Add elements to get started!
Size:
0
Capacity:
5
Last Operation:
None
Operation Explanation
Select an operation from the controls panel to see the step-by-step execution with highlighted code and detailed explanations.
Array.java
View Source
public class Array<T> {
private Object[] array;
private int size;
private int capacity;
public Array() {
capacity = 5;
array = new Object[capacity];
size = 0;
}
public void insert(T element) {
if (size == capacity) {
resize();
}
array[size] = element;
size++;
}
public boolean delete(T element) {
int index = search(element);
if (index == -1) {
return false;
}
shiftLeft(index);
size--;
return true;
}
public int search(T element) {
for (int i = 0; i < size; i++) {
if (array[i].equals(element)) {
return i;
}
}
return -1;
}
private void resize() {
capacity *= 2;
Object[] newArray = new Object[capacity];
for (int i = 0; i < size; i++) {
newArray[i] = array[i];
}
array = newArray;
}
private void shiftLeft(int index) {
for (int i = index; i < size; i++) {
array[i] = array[i + 1];
}
}
public int size() {
return size;
}
}
Array Operations
Animation Controls
Slow
Fast
Presets
Statistics
Operations:
0
Comparisons:
0
Time Complexity (Last Operation):
-