您的位置:首页 > 娱乐 > 明星 > 网络设计是啥_企业邮箱怎么申请注册账号_手机百度提交入口_seo辅助工具

网络设计是啥_企业邮箱怎么申请注册账号_手机百度提交入口_seo辅助工具

2025/6/21 21:09:27 来源:https://blog.csdn.net/2201_75478206/article/details/145520603  浏览:    关键词:网络设计是啥_企业邮箱怎么申请注册账号_手机百度提交入口_seo辅助工具
网络设计是啥_企业邮箱怎么申请注册账号_手机百度提交入口_seo辅助工具

#思路

1、  结点类:

        属性:数据,孩子结点列表

        功能1:认孩子: 前提:在父子都是结点的情况下

2.     树类:

        属性:根节点,生成初始化的总结点

        功能1:获取初始化后的结点,准备赋值

        功能2:设置根节点

        功能3:初始化父子节点,然后调用认孩子功能

        功能4:为各个id 的结点添加数据

        功能5:打印——第一次使用递归思想

                     先判断,确定根节点,然后打印

                     接着遍历该节点的孩子列表(此时孩子列表已可泛化)

                     调用函数,对遍历到的每个节点重复相同功能

class TreeNode:def __init__(self):self.data = Noneself.childrenList = []def AddChild(self, tNode):self.childrenList.append(tNode)class Tree:def __init__(self, maxNodes):self.root = Noneself.nodes = [TreeNode() for i in range(maxNodes)]def GetTreeNode(self, id):return self.nodes[id]def SetRoot(self, rootId):self.root = self.GetTreeNode(rootId)def AddChild(self, parentId, sonId):pNode = self.GetTreeNode(parentId)sNode = self.GetTreeNode(sonId)pNode.AddChild(sNode)def AssignDate(self, nodeId, data):self.GetTreeNode(nodeId).data = datadef Print(self, node=None):if node == None:node = self.rootprint(node.data, end="")for child in node.childrenList:self.Print(child)def Test():T = Tree(9)T.SetRoot(0)T.AssignDate(0, "a")T.AssignDate(1, "b")T.AssignDate(2, "c")T.AssignDate(3, "d")T.AssignDate(4, "e")T.AssignDate(5, "f")T.AssignDate(6, "g")T.AssignDate(7, "h")T.AssignDate(8, "i")T.AddChild(0, 1)T.AddChild(0, 2)T.AddChild(1, 3)T.AddChild(2, 4)T.AddChild(2, 5)T.AddChild(3, 6)T.AddChild(3, 7)T.AddChild(3, 8)T.Print()Test()

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com