这里是黄永亮的博客

2022年04月的存档

文章存档

20220424树的布局算法

某群友需要绘制树形结构数据到excel中,拍脑袋想了下感觉不是很难,遂给出算法分析。 偷懒用了excel的column和row函数获取所在行列,直接能看到结果,目测也是算得出来结果的 因为要求是横着的,所以例子是横着的。但算法定义时候是竖着思考的,所以用的是宽度w和距离左侧的宽度l,算完了再横过来画就完了 首先这样定义子节点宽度: 当不存在子节点(即叶子节点)时,宽度为1 当存在子节点时,如果子节点为奇数n则宽度为n,如果为偶数n则宽度为n+1。说明:因为偶数的情况下父节点需要居中占一个,(n+1)/2的位置要空着给父节点 然后计算 ...