I was looking for stl/boost container which can provide following functionality:
A binary tree (B-tree) has logarithmic insertion and retrieval (equivalent to depth count) time in the average case and is naturally sorted when walked in-order.
Unfortunately, a B-tree insertion/retrieval time might degenerate to linear if the tree is unbalanced (worst case). If this is an issue, you should consider a Red-Black tree, which does not eliminate the problem, but mitigates it while keeping the insertion time logarithmic in the size of the tree.
Neither STL nor Boost implement a B- or RB- tree, although std::map is usually implemented as a RB.
Please keep in mind that a linked list has linear insertion time, even if double.