任何无限极分类都会涉及到创建一个树状层级数组。从顶级分类递归查找子分类,最终构建一个树状数组。如果分类数据是一个数组配置文件,且子类父类id没有明确的大小关系。那么我们如何高效的从一个二维数组中构建我们所需要的树状结构呢。
假设数据源如下:
return [
['id'=>1,'name'=>'文章','parent_id'=>0],
['id'=>2,'name'=>'页面','parent_id'=>0],
['id'=>3,'name'=>'娱乐','parent_id'=>1],
['id'=>4,'name'=>'国内','parent_id'=>1],
['id'=>5,'name'=>'海外','parent_id'=

本文探讨如何高效地将二维数组转化为树形结构,对比了两种方案:方案1采用全量遍历导致N^2的时间复杂度,而方案2通过限制递归范围降低到Nx2。测试结果显示,尽管方案2仍使用递归,但在5000个数据的100次执行中,其时间和内存效率优于方案1。文章提出了对于大数据量场景下,寻找更优解决方案的需求。
最低0.47元/天 解锁文章
484

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



