I was verifying the performance of an endpoint in an API using framegraph when I noticed that checking if an object is in a set or a hash data structure was consuming a lot of time. This post explains the problem and the solution to it.
First of all, checking if an object is in a Set or HashMap is O(1)
when we don’t consider collisions. Even in the presence of collisions, it should be much less than O(n)
, where n
is the number of items in the set. Otherwise, we are operating as a linked list.