需求:
如果要处理一个包含多层结构的Json对象,需要将里面的键值对根据需求进行替换,比如这两种场景:
- 替换键名:例如,将所有的"oldKey"改为"newKey"
- 替换值:例如,将所有的"oldValue"改为"newValue"

深度优先搜索 or 广度优先搜索?
这个问题有点像图遍历问题,思考需要采用深度还是广度优先。

思路
记录个思考过程吧,
由于JSON是多层嵌套的,必须遍历所有节点。递归是个不错选择,因为它能处理不确定深度的结构。当然:也可以使用迭代方式(如栈或队列)等。
递归的话需要考虑两个问题:
- 回归值;
- 基础动作;
基础动作:
TODO
回归值:
TODO
浙公网安备 33010602011771号