我的树形结构如下,
{
uid: 1,
children: [
{
uid: 2
},
{
uid: 3,
children: [
{
uid: 4
},
{
uid: 5,
children: [
{
uid: 6
}
]
},
{
uid: 7
}
]
}
]
}
现在,我想通过uid搜索树形结构,并需要将其作为树形结构输出(即与其父级一起,但没有兄弟姐妹)
例如,如果我在树结构中搜索“ uid:4”,则输出结果应类似于以下内容,
{
uid: 1,
children: [
{
uid: 3
children: [
{
uid: 4
}
]
}
]
}
我尝试了递归,但未能与父母一起获取匹配的元素
答案 0 :(得分:0)
假设原始JSON树没有重复项,并且假设JSON树并不总是包含顺序的uid,并且假设您只想要直接祖先线,则最好使用深度优先搜索(https://www.tutorialspoint.com/Depth-first-search-traversal-in-Javascript )在原始JSON树上。您还需要跟踪当前的祖先直线,以防下一个值与您要搜索的那个相匹配。然后,您可以返回完整的直线。