mirror of
https://github.com/Xevion/contest.git
synced 2025-12-06 13:14:39 -06:00
move datastructures into collections for organization
This commit is contained in:
83
study/collections.MD
Normal file
83
study/collections.MD
Normal file
@@ -0,0 +1,83 @@
|
||||
### Common Java Data Structures Summary
|
||||
|
||||
Java contains many object based data structures that you can import, some used more than others (ArrayList, for example).
|
||||
|
||||
Not all of them work in familiar ways, and their methods can be confusing without proper usage, study, and a quick explanation over how they're used.
|
||||
|
||||
#### Interfaces
|
||||
##### Collection
|
||||
|
||||
Common Implementing SubInterfaces:
|
||||
* Deque
|
||||
* List
|
||||
* Queue
|
||||
* Set
|
||||
* SortedSet
|
||||
|
||||
Common Implementing Classes:
|
||||
* ArrayList
|
||||
* ArrayDeque
|
||||
* EnumSet
|
||||
* HashSet
|
||||
* LinkedList
|
||||
* PriorityQueue
|
||||
* Stack
|
||||
* TreeSet
|
||||
|
||||
##### Iterable
|
||||
|
||||
Common Implementing SubInterfaces
|
||||
* Collection
|
||||
* Deque
|
||||
* List
|
||||
* Queue
|
||||
* Set
|
||||
* SortedSet
|
||||
|
||||
Common Implementing Classes:
|
||||
* ArrayDeque
|
||||
* ArrayList
|
||||
* EnumSet
|
||||
* HashSet
|
||||
* LinkedList
|
||||
* PriorityQueue
|
||||
* Stack
|
||||
* TreeSet
|
||||
|
||||
##### List
|
||||
|
||||
Super Interfaces:
|
||||
* Collection
|
||||
* Iterable
|
||||
|
||||
Implementing Classes:
|
||||
* ArrayList
|
||||
* LinkedList
|
||||
* Stack
|
||||
|
||||
A unordered collection (also known as a *sequence*) that allows precise control over where each element is inserted in a list.
|
||||
|
||||
Users have methods allowing all of the following to methods:
|
||||
* 4 methods providing positional index-based access to list elements.
|
||||
* 1 method for accessing a special iterator, `ListIterator` allowing element insertion and replacement starting from a specified position.
|
||||
* 2 methods for searching for a specified object. Usually *costly* linear searches.
|
||||
* 2 methods for efficiently inserting and removing *multiple* elements at an arbitrary point.
|
||||
|
||||
##### Set
|
||||
##### Queue
|
||||
##### Deque
|
||||
##### SortedSet
|
||||
##### Map
|
||||
##### SortedMap
|
||||
##### NavigableMap
|
||||
|
||||
#### Classes
|
||||
##### ArrayList
|
||||
##### LinkedList
|
||||
##### Stack
|
||||
##### PriorityQueue
|
||||
##### TreeSet
|
||||
##### ArrayDeque
|
||||
##### EnumSet
|
||||
##### HashSet
|
||||
##### HashMap
|
||||
Reference in New Issue
Block a user