การออกแบบโครงสร้างแบบกำหนดเอง หมายถึง การรวมโครงสร้างที่มีอยู่ เพื่อให้ทุกการดำเนินการที่จำเป็นบรรลุความซับซ้อนของเป้าหมาย โดยโครงสร้างหนึ่งครอบคลุมจุดอ่อนของอีกโครงสร้างหนึ่ง เทคนิคแบบดั้งเดิมคือการจับคู่ hash map กับ array, heap หรือ linked list
ตัวอย่างที่ใช้งานได้: insert, delete, getRandom — ทั้งหมด O(1)
ข้อกำหนด: , และ แต่ละอันใน O(1) Hash map เพียงอย่างเดียวไม่สามารถ O(1) random ได้ array เพียงอย่างเดียวไม่สามารถ O(1) remove ได้
