效果图展示

总结
对于之前的两级树,博主首先想到的是实体类里面进行封装就可以了,并没有采用递归的形式,可后来随着树结构的增加,树的层级也越来越大,这种情况下显然是不可采取的,便想到了采用递归的方式,同时对于搜索也能采用递归的思想,这样对于无论多少层树同样适用,大大提高了工作效率

代码
话不多说,上代码
/**
* 树的展示加搜索
*
* @param map
* @return
*/
@RequestMapping("/findTree")
public R findTree(@RequestBody Map<String, Object> map) {
String keywords = (String) map.get("keywords");
List<TreeVo> treeVos = treeDao.treeKeywords(keywords);
List<String> list = new ArrayList<>();
for (TreeVo treeVo : treeVos) {
String nodeName = treeVo.getNodeName();
list.add(nodeName);
}
List<TreeVo> oneTrees = treeDao.findOneTree();
List<TreeVo> lists = new ArrayList<>();
for (TreeVo oneTree : oneTrees) {
traverse(oneTree);
lists.add(oneTree);
}
if (keywords.isEmpty()) {
return R.ok().setData(lists);
}
List<TreeVo> treeVos1 = screenTree(lists, list);
return R.ok().setData(treeVos1);

本文介绍了一种使用递归实现的Java树结构展示及搜索优化方案。通过递归遍历和筛选,该方案能够高效地处理多级树结构,提高搜索效率。
1481

被折叠的 条评论
为什么被折叠?



