ایک hash map (dictionary) O(1) اوسط lookups، inserts، اور deletes فراہم کرتا ہے۔ O(n) میموری کو رفتار کے لیے تبدیل کرنے سے بہت سے O(n²) الگورتھم O(n) میں بدل جاتے ہیں بار بار scanning کو فوری lookups سے بدل کر۔
خیال
ہر بار list میں تلاش کرنے کی بجائے، دیکھے گئے values کو hash map میں store کریں اور مستقل وقت میں membership کو check کریں۔
مثال: two-sum in O(n)
():
seen = {}
i, x (nums):
need = target - x
need seen:
(seen[need], i)
seen[x] = i
two_sum([, , , ], )
