//NSMutableArray works as a queue
NSMutableArray *intQueue =
[NSMutableArray array];
[intQueue addObject:@1];
[intQueue addObject:@3];
[intQueue addObject:@5];
NSNumber *top = intQueue.firstObject;
//top is 1
NSNumber *first = intQueue.firstObject;
[intQueue removeObjectAtIndex:0];
//first is 1
NSNumber *second = intQueue.firstObject;
[intQueue removeObjectAtIndex:0];
//second is 3
NSNumber *third = intQueue.firstObject;
[intQueue removeObjectAtIndex:0];
//third is 5