news 2026/6/10 0:52:02

【java入门到放弃】二叉树

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【java入门到放弃】二叉树

二叉树

前序中序后序遍历,是指根节点的顺序

importjava.util.LinkedList;importjava.util.Queue;publicclassBinaryTreeTraversal{// ===== 二叉树节点定义 =====staticclassTreeNode{intval;TreeNodeleft;TreeNoderight;TreeNode(intval){this.val=val;}}// ===== 创建一棵示例二叉树 =====// 1// / \// 2 3// / \// 4 5staticTreeNodebuildTree(){TreeNoderoot=newTreeNode(1);root.left=newTreeNode(2);root.right=newTreeNode(3);root.left.left=newTreeNode(4);root.left.right=newTreeNode(5);returnroot;}// ===== 1. 前序遍历:根 → 左 → 右 =====staticvoidpreorder(TreeNoderoot){if(root==null)return;System.out.print(root.val+" ");preorder(root.left);preorder(root.right);}// ===== 2. 中序遍历:左 → 根 → 右 =====staticvoidinorder(TreeNoderoot){if(root==null)return;inorder(root.left);System.out.print(root.val+" ");inorder(root.right);}// ===== 3. 后序遍历:左 → 右 → 根 =====staticvoidpostorder(TreeNoderoot){if(root==null)return;postorder(root.left);postorder(root.right);System.out.print(root.val+" ");}// ===== 4. 层序遍历(BFS) =====staticvoidlevelOrder(TreeNoderoot){if(root==null)return;Queue<TreeNode>queue=newLinkedList<>();queue.offer(root);while(!queue.isEmpty()){TreeNodenode=queue.poll();System.out.print(node.val+" ");if(node.left!=null){queue.offer(node.left);}if(node.right!=null){queue.offer(node.right);}}}// ===== main 方法测试 =====publicstaticvoidmain(String[]args){TreeNoderoot=buildTree();System.out.print("前序遍历:");preorder(root);System.out.println();System.out.print("中序遍历:");inorder(root);System.out.println();System.out.print("后序遍历:");postorder(root);System.out.println();System.out.print("层序遍历:");levelOrder(root);System.out.println();}}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 14:42:55

RKLLM加速框架:三步完成AI模型在嵌入式设备的极速部署

RKLLM加速框架&#xff1a;三步完成AI模型在嵌入式设备的极速部署 【免费下载链接】rknn-llm 项目地址: https://gitcode.com/gh_mirrors/rk/rknn-llm 面对AI模型在嵌入式设备部署的复杂挑战&#xff0c;RKLLM加速框架为开发者提供了完整的解决方案。这款专为Rockchip …

作者头像 李华
网站建设 2026/6/10 13:41:03

【C#】ScottPlot的Refresh()

源码会随 ScottPlot 大版本变化。 Refresh(bool lowQuality false, bool skipIfCurrentlyRendering false)这基本就是 ScottPlot 4.x 的 WinForms ScottPlot.FormsPlot 那套实现。 ScottPlot 4.x&#xff1a;FormsPlot.Refresh() 源码大意 在 ScottPlot 4.x 的 WinForms 控…

作者头像 李华
网站建设 2026/6/10 14:45:06

企业差旅报销平台有哪些?2025年主流服务商深度解析

企业差旅报销平台有哪些&#xff1f;这是许多企业管理者在优化差旅管理流程时首先思考的问题。随着数字化转型的加速&#xff0c;传统纸质报销模式已无法满足现代企业的效率需求&#xff0c;专业差旅报销平台正成为企业降本增效的重要工具。据2025年企业数字化支出管理调研显示…

作者头像 李华
网站建设 2026/6/10 14:44:43

Kotaemon吞吐量提升秘籍:批量推理与并行处理

Kotaemon吞吐量提升秘籍&#xff1a;批量推理与并行处理 在企业级智能对话系统日益复杂的今天&#xff0c;一个常见的挑战浮出水面&#xff1a;当数十甚至上百个用户同时发起咨询时&#xff0c;系统是否还能保持毫秒级响应&#xff1f;传统逐条处理的AI服务架构往往在高并发下迅…

作者头像 李华