ds:
- ArrayList: dynamic array
- LinkedList: linked list
eff:
- random access: ArrayList
- add/remove: LinkedList
degree of freedom:
- ArrayList: low, set capacity, easy to use;
- LinkedList: high, change w.r.t. #elements, uneasy to use
major expense:
- ArrayList: space pre-set for list
- LinkedList: node storage, node pointer