queue as adt in data structure