...
/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(val)
: This function should insertval
into the set (if the set does not contain it already). It should returnfalse
if theval
already exists in the set. Otherwise, it should returntrue
.remove(val)
: If theval
is present, this function should removeval
from the set and returntrue
. If theval
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. ...