网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

阅读这篇二叉树操作实验报告,能掌握哪些高效二叉树操作技巧?

GG网络技术分享 2025-11-13 00:55 5


您给的代码片段和文字说说了二叉树的基本操作,包括创建、查找、插入和遍历。下面是对这些个操作的详细说明白和代码示例:

创建二叉树

cpp TreeNode* createTree { int val; cin>> val; if { // 若读入的值为-1, 则表示该节点为空 return NULL; } TreeNode* root = new TreeNode; root->left = createTree; // 递归创建左子树 root->right = createTree; // 递归创建右子树 return root; }

查找节点

cpp TreeNode* search { if { // Ru果树为空,则返回NULL return NULL; } if { // Ru果找到值匹配的节点,则返回该节点 return root; } if { // Ru果值细小于当前节点的值,则搜索左子树 return search; } else { // Ru果值巨大于当前节点的值,则搜索右子树 return search; } }

插入节点

cpp void insert { if { // Ru果树为空,则创建新鲜节点 root = new TreeNode; return; } if { // Ru果值细小于当前节点的值,则递归插入到左子树 insert; } else { // Ru果值巨大于当前节点的值,则递归插入到右子树 insert; } }

遍历二叉树

前序遍历

cpp void preorder { // 前序遍历 if { return; } cout < root->val < " "; preorder; // 遍历左子树 preorder; // 遍历右子树 }

中序遍历

cpp void inorder { // 中序遍历 if { return; } inorder; // 遍历左子树 cout < root->val < " "; inorder; // 遍历右子树 }

后序遍历

cpp void postorder { // 后序遍历 if { return; } postorder; // 遍历左子树 postorder; // 遍历右子树 cout < root->val < " "; }

标签:

提交需求或反馈

Demand feedback