Summarize some common data structures encountered in the process of brushing LeetCode, and use Java to define
1. Stack
Deque<Integer> stack = new ArrayDeque<Integer>();
2. Queue
Queue<Integer> queue = new LinkedList<Integer>();
3. Small top pile
PriorityQueue<Integer> pq = new PriorityQueue<Integer>();
4. Large bank
PriorityQueue<Integer> pq = new PriorityQueue<Integer>(new Comparator<Integer>() {
@Override
public int compare(Integer a, Integer b){
return b - a; //大顶堆:参数2-参数1;小顶堆:参数1-参数2
}
});
5. Map
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
6. Array
List<Integer> list = new ArrayList<Integer>();
7. Hash set
Set<Integer> set = new HashSet<Integer>();