java二叉树代码怎么写

avatar
作者
猴君
阅读量:0

在 Java 中,可以使用类来表示二叉树节点和二叉树。下面是一个简单的二叉树实现:

// 定义二叉树节点类 class TreeNode {     int value; // 节点值     TreeNode left; // 左子节点     TreeNode right; // 右子节点      // 构造方法     public TreeNode(int value) {         this.value = value;         this.left = null;         this.right = null;     } }  // 定义二叉树类 class BinaryTree {     private TreeNode root; // 根节点      // 构造方法     public BinaryTree() {         root = null;     }      // 向二叉树中插入节点     public void insert(int value) {         if (root == null) {             root = new TreeNode(value);         } else {             insertRecursively(root, value);         }     }      // 递归插入节点     private void insertRecursively(TreeNode node, int value) {         if (value< node.value) {             if (node.left == null) {                 node.left = new TreeNode(value);             } else {                 insertRecursively(node.left, value);             }         } else {             if (node.right == null) {                 node.right = new TreeNode(value);             } else {                 insertRecursively(node.right, value);             }         }     }      // 中序遍历二叉树     public void inorderTraversal() {         inorderTraversalRecursively(root);         System.out.println();     }      // 递归中序遍历     private void inorderTraversalRecursively(TreeNode node) {         if (node != null) {             inorderTraversalRecursively(node.left);             System.out.print(node.value + " ");             inorderTraversalRecursively(node.right);         }     } }  // 测试代码 public class Main {     public static void main(String[] args) {         BinaryTree tree = new BinaryTree();         tree.insert(5);         tree.insert(3);         tree.insert(7);         tree.insert(2);         tree.insert(4);         tree.insert(6);         tree.insert(8);          System.out.println("中序遍历结果:");         tree.inorderTraversal();     } } 

这个例子中,我们定义了一个 TreeNode 类来表示二叉树的节点,包含节点值、左子节点和右子节点。然后定义了一个 BinaryTree 类来表示二叉树,包含根节点和插入、中序遍历等操作方法。最后在 Main 类中进行测试,插入一些节点并进行中序遍历。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!