On Wed, Oct 28, 2020 at 03:15:40PM +0000, Paul via Digitalmars-d-learn wrote: > per the D sample wc2.d.... > size_t[string] dictionary; <-is printed by... > ..... > foreach (word1; dictionary.keys.sort) writef ....etc > > I want to print the dictionary sorted by value not key. I can write > an algorithm but is there a library method(s) I can use to iterate > through the array sorted by decreasing values? [...]
Just use a different sorting predicate: import std; void main() { int[string] aa = [ "abc": 321, "def": 234, "ghi": 524, "jkl": 310, "mno": 110, "pqr": 910, ]; foreach (key; aa.keys.sort!((a,b) => aa[a] < aa[b])) { writeln(key); } } T -- Curiosity kills the cat. Moral: don't be the cat.