查找数组算法
数组结构如下,树状数组
[
{
"AA": "111",
"BB": "222",
"CC": "333",
"DD": "",
"EE": "444",
"CHILDREN": {
"MM": "555",
"TT": "666",
"CHILDREN": {
"MM": "555",
"TT": "000",
"NAME":"TOM"
"CHILDREN": {
"MM": "555",
"TT": "555",
"NAME": "JACK"
}
}
},
"NAME": "INSI",
"VALUE": "000000",
"TYPE": "CN"
},
{
"AA": "111",
"BB": "222",
"CC": "333",
"DD": "",
"EE": "444",
"CHILDREN": {
"MM": "555",
"TT": "YYY",
"CHILDREN": {
"MM": "555",
"TT": "666",
"NAME": "000"
}
},
"NAME": "INSI",
"VALUE": "000000",
"TYPE": "CN"
},
{
"AA": "111",
"BB": "222",
"CC": "333",
"DD": "",
"EE": "444",
"CHILDREN": {
"MM": "555",
"TT": "777",
"NAME": "111",
"CHILDREN": {
"MM": "555",
"TT": "777",
"NAME": "111",
"CHILDREN": {
"MM": "555",
"TT": "777",
"NAME": "JACK"
}
}
},
"NAME": "NNN",
"VALUE": "000000",
"TYPE": "CN"
}
]
查找符合条件目标
在树状数组中查找符合条件目标,如果第一层级NAME值为JACK,返回这个对象,如果不等于JACK,继续查找所有节点CHILDREN,直到找到符合条件的对象,返回所有符合条件的对象,数组有很多CHILDREN.无法确定有多少节点,目前想到遍历递归,求个效率高的算法