java我们如何对嵌套字典进行排序,其中条目按键排序(在每个嵌套字典中)?
嵌套字典是一种字典,其键为字符串,值为字符串或其他嵌套字典。给定一个字符串表示,我们需要返回一个字符串表示,其中条目按键排序(在每个嵌套字典中)
Input: { b:{cb:cranberry,bb:blueberry},a:apple,c:cherry}
Output: { a:apple,b:{bb:blueberry,cb:cranberry},c:cherry}
在这里,最外层字典中的条目已按键重新排序(即从b,a,c
到a,b,c
)。类似地,最内层字典中的条目已按键重新排序(即从cb,bb
到bb,cb
)
另外,请注意:输出将具有与输入字符串相同的通用格式。除了在每个嵌套字典中,键应该按照增加的字典顺序排序(例如a<b<bb<bbb<bc<c
)
# 1 楼答案
这闻起来像是一个面试问题。无论如何
基本思想:
Stack
按深度存储每个dict深度。堆栈顶部将有最深的子目录TreeMap
表示每个dict/sub dict使用
TreeMap
而不是HashMap
,因为TreeMap
已经按照条目的键对条目进行了排序李>如果不给出完整的解决方案,很难把它“弄清楚”。希望能有帮助