...
/DIY: Insert Delete GetRandom O(1) - Duplicates Allowed
DIY: Insert Delete GetRandom O(1) - Duplicates Allowed
Solve the interview question "Insert Delete GetRandom O(1) - Duplicates Allowed" in this lesson.
We'll cover the following...
Problem statement
Implement a set data structure that allows duplicates and can perform the following operations:
insert(data)
: This function should insertdata
into the set (if the set does not contain it already). It should returnfalse
if thedata
already exists in the set. Otherwise, it should returntrue
.remove(data)
: If thedata
is present, this function should removedata
from the set and returntrue
. If thedata
does not exist in the set, the function should returnfalse
.getRandom()
: This function should return a random element from the set in constant time.
Note: Your implementation should aim for constant running time (on average) for each operation. ...