次のような地図があります。
user> (frequencies "aaabccddddee")
{\a 3, \b 1, \c 2, \d 4, \e 2}
そして、引数として渡す文字列に各文字が出現する順序に従って、キーと値のペアを並べ替える関数が必要です。
このようなもの:
user> (somesort "defgcab" (frequencies "aaabccddddee"))
[[\d 4] [\e 2] [\c 2] [\a 3] [\b 1]]
(上記の例では、'f' と 'g' はマップに表示されないため、無視されます。文字列 (この例では "defgcab") には、マップ内のすべての文字/キーが含まれていることが保証されています。 )
結果として得られるコレクションは、ソートされている限り、それほど重要ではありません。
私はいくつかのことを試しましたが、これを機能させる方法が見つかりません。