c++ - 在二叉树中插入值的函数?
问题描述
我有一个函数insert用于将值插入二叉树。但是当我注销该值时,什么都没有显示。
我知道使用成员函数插入。
根节点的值没有被更新?
有人能告诉我哪里出错了吗?
#include <iostream>
using namespace std;
class Node{
public:
int value;
Node* left;
Node* right;
Node();
Node(int data){
value = data;
left = NULL;
right = NULL;
}
};
void insert(Node* root , int val){
if(root == NULL){
root = new Node(val);
return;
}
if(root->value > val)
insert(root->left,val);
else
insert(root->right,val);
}
int main()
class Node* root = NULL;
insert(root,5);
cout<<root->value;
}
解决方案
您在正确的位置插入位置,但问题是您没有link
将新插入的节点创建到它的父节点。
你可以看看这个作为参考!
推荐阅读
- linux - 如何调优网络吞吐量突然下降
- angularjs - 我正在尝试显示 Base64 视频,(AngularJS,NeDB)
- spring - 如何以正确的方式保护 REST API Spring security auth2
- gravitee - 为什么门户 UI 中缺少身份提供者按钮
- sql-server - 如何在 ADF 中的存储过程活动的动态内容中给出条件
- javascript - 更改谷歌图表列位置的问题
- matlab - MATLAB:datenum() 每次使用“formatIn”参数调用时都会返回错误
- reactjs - Redux useSelector 更新不够快
- javascript - 如何在 Ionic React 多按钮表单中执行 HTML5 验证?
- uwp - 根据主题变化设置颜色