嵌套字典是一个字典,其键是字符串,其值是字符串或其他嵌套字典。给定字符串表示,我们需要返回一个String表示,其中条目按键排序(在每个嵌套字典中)
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
)
答案 0 :(得分:0)
这闻起来就像一个面试问题。反正。
基本想法:
Stack
按深度存储每个字典深度。堆栈的顶部将具有最深的子字典TreeMap
来表示每个dict / sub-dict
使用TreeMap
代替HashMap
,因为TreeMap
已按其键排序条目。 很难做到&#34;清楚&#34;没有给出完整的解决方案。希望它有所帮助。