- 1
- 0
- 约 5页
- 2017-06-17 发布于湖北
- 举报
函数递归在树形结构数据遍历中的应用
我们在使用树形结构数据时,常常需要遍历整棵树或某一支下的所有结点,用于查找、打印等功能。因为树形结构不同于数组、链表等简单数据结构,它像树枝一样每个根结点可以具有多个子结点,无限延展,因此需要专门的算法去遍历。树形结构的遍历有很多种方法,下面我们以紫金桥监控组态软件(以下简称为“RealInfo”)为例,简单讲解函数递归在这种遍历方法中的应用。
在RealInfo中,“树形控件”是表示树状结构数据的组件,“自由报表”是表示表格数据的组件,这两种组件自身都提供了一些常用方法。我们现在实现这样的功能:将树形控件中的指定分支数据打印在自由报表中。可以利用窗口自定义函数的递归功能。
树形控件中的数据显示方式如下图所示:
每个结点以结点编码为唯一标识,每个结点可以显示一个字符串作为结点文本(详见RealInfo联机帮助)。
本例中,我们将树形结构数据打印在自由报表上,其效果如下图所示:
每个根结点打印完成后,遇到子结点时打印位置自动向右、向下移动一个单元格;遇到兄弟结点时打印位置向下移动一个单元格。
现在我们开始分析算法。我们知道,树的遍历是指沿着某条搜索路线,依次对中每个结点均做一次且仅做一次访问
函数首先判断输入结点是否具有子结点,如果没有则返回,如果有则取得子结点列表,然后循环打印每个子结点并递归调用自身函数打印其子结点,当一个结点a
您可能关注的文档
最近下载
- 06上海卷 (2024-2020) 近五年高考英语真题满分作文汇编.pdf VIP
- 2022年甘肃省兰州市中考历史试题及.pdf VIP
- 国开25春《中国近现代史纲要》终考任务——大作业.doc VIP
- 替罗非班在急性缺血性卒中应用研究PPT.pptx VIP
- T /GDNAS 072—2026 腰大池外引流护理规范.pdf VIP
- 2025年初中物理课程标准考试测试题及答案.docx VIP
- 长城汽车出口现状及对策研究.docx VIP
- 广州市初中信息技术学业水平考试.doc VIP
- 2026年新疆维吾尔自治区哈密市地理生物会考考试真题及答案.docx
- 替罗非班在急性缺血性卒中应用进展PPT.pptx VIP
原创力文档

文档评论(0)