Double-ended queues with sub-linear membership testing