I found this great talk on a data structure that I think would work for my required needs, not sure if any of you have seen it.
This would be great to have in the Swift library, as an optional array type