review
stack and queue
stack: first in last out
นึกถึงกองจาน
queue: first in first out
คิวทั่วไป
linked list
เป็น concept ที่เป็นโครงสร้างแนวเดียวกับ array แต่ข้อดีข้อเสียต่างกัน

GeeksforGeeks visual reference. Source: media.geeksforgeeks.org
dynamic array
ใช้ vector ของ stl
binary tree
heap

priority queue

binary search tree
set, map
เหมือน set ทางคณิตศาสตร์
map
เหมือน dictionary ใน Python
เสมือน array ที่ index เป็นอะไรก็ได้
graph
มี cycle
tree เป็น graph ที่ไม่มี cycle
hash table
data structure ที่ใช้บีบข้อมูลให้เล็กลงโดยอาจจะเสียความละเอียดไป
เช่น บีบ string ให้เหลือแค่ int ผ่าน hash function แต่ก็มีโอกาสชนกันเป็นปัญหา collision