ChatAI 智能内容创作平台

登录

超智能内容创作平台,AI绘画、写文章、写策划、写文案、写代码,回答你所有问题

更原创、更完整、更智能

免费试用 Pro 版
联系客服

联系客服为您打造专属AI系统

绘图
发送
AI思考中...
请帮忙写一段二叉树结构的代码
2024-07-08 23:27:00
来自 台湾省桃园市 用户
" 下面是一个简单的二叉树结构代码实现,使用Python编写: ```python class TreeNode: def __init__(self, value): self.value = value self.left = None self.right = None class BinaryTree: def __init__(self): self.root = None def insert(self, value): if not self.root: self.root = TreeNode(value) else: self._insert(self.root, value) def _insert(self, node, value): if value < node.value: if not node.left: node.left = TreeNode(value) else: self._insert(node.left, value) else: if not node.right: node.right = TreeNode(value) else: self._insert(node.right, value) def inorder_traversal(self): return self._inorder_traversal(self.root, []) def _inorder_traversal(self, node, result): if node: self._inorder_traversal(node.left, result) result.append(node.value) self._inorder_traversal(node.right, result) return result # 示例 bt = BinaryTree() bt.insert(5) bt.insert(3) bt.insert(7) bt.insert(1) bt.insert(4) bt.insert(6) bt.insert(8) print(bt.inorder_traversal()) # 输出: [1, 3, 4, 5, 6, 7, 8] ``` 这个代码定义了一个`TreeNode`类,用于表示二叉树的每个节点,以及一个`BinaryTree`类,用于表示整个二叉树。`BinaryTree`类包含一个根节点`root`,以及`insert`和`inorder_traversal`方法。`insert`方法用于向二叉树中插入新的值,`inorder_traversal`方法用于以中序遍历的方式输出二叉树中的所有值。"

ChatAI 智能内容创作平台

内容数
浏览数
用户数
微信扫一扫
二维码失效
点击刷新
微信扫码登录/注册
首次扫码关注公众号后将自动注册新账号
请使用 Pro 版以继续
绘图功能及更多问答次数,请前往Pro版继续免费试用。
免费试用 Pro 版
取消
添加联系客服
服务时间:早上 9:00 - 22:00