Accessing a Hash table as a Value-Sorted Range

Brad Anderson eco at gnuk.net
Tue Nov 19 13:14:00 PST 2013


On Tuesday, 19 November 2013 at 21:11:42 UTC, Nordlöw wrote:
> If I have a hash-table `File[string] _subs` and want to access 
> its values in a sorted way is there a better than simply through
>
>
>     auto ssubs = new File[_subs.length]; // preallocate sorted 
> subs
>     size_t ix = 0;
>     foreach (sub; _subs) {
>         ssubs[ix++] = sub;  // set new reference to sub
>     }
>
>     ssubs.sort!((a, b) => (a.timeLastModified >
>                            b.timeLastModified));
>
>     return ssubs;

You could switch to a RedBlackTree which is sorted and offers 
somewhat fast lookup. Other than that, I'd say what you are doing 
is already about as good as you can get.


More information about the Digitalmars-d-learn mailing list