Array & ArrayList Visualization

Visualize dynamic array operations and understand capacity management

Array Visualization

Size: 0 | Capacity: 6

The array is empty

Use the controls to add elements

Implementation Code

Select an operation to view implementation

1class DynamicArray {
2 private items: number[]
3 private capacity: number
4 private size: number
5
6 constructor(initialCapacity = 4) {
7 this.capacity = initialCapacity
8 this.size = 0
9 this.items = new Array(this.capacity).fill(null)
10 }
11
12 // Methods will be shown when an operation is selected
13}

Operations

Perform array operations

Array Properties

Structure

A dynamic array automatically resizes when capacity is reached, doubling its size to accommodate new elements.

Time Complexity

Access by Index:O(1)
Push (Amortized):O(1)
Insert at Index:O(n)
Delete at Index:O(n)
Search:O(n)

Applications

  • Implementing dynamic lists
  • Stack and queue implementations
  • Storing and processing collections
  • Buffer management in I/O operations

Advantages

  • Fast random access O(1)
  • Cache-friendly (contiguous memory)
  • Automatic memory management
  • Dynamic sizing