当前位置: 首页 > news >正文

编程日志5.10

二叉搜索树的基础代码

#include<iostream>
using namespace std;

//二叉搜索树节点定义
template<typename T>
struct TreeNode {
    T val;//一个类型为T的成员变量val,用于存储树节点的值
    TreeNode* left;//left、right两个指针类型的成员变量,分别用于指向树节点的左子节点和右子节点
    TreeNode* right;
    //这是一个无参的构造函数,用于初始化树节点的成员变量。在这个构造函数中,将节点的值设置为0,左子节点和右子节点都设置为NULL。
    TreeNode():val(0),left(NULL),right(NULL){}
    //这是一个有参的构造函数,用于初始化树节点的成员变量。在这个构造函数中,将节点的值设置为给定的参数x,左子节点和右子节点都设置为NULL。
    TreeNode(T x):val(x),left(NULL),right(NULL){}
};

//二叉搜索树 类定义
template<typename T>
class BinarySearchTree {
private://定义私有成员变量/函数
    TreeNode<T>* root;//1.用于存储二叉搜索树的根节点指针
    TreeNode<T>* insertNode(TreeNode<T>* node, T value);//2.用于向二叉搜索树中插入一个结点
    TreeNode<T>* removeNode(TreeNode<T>* node, T value);//3.用于从二叉搜索树中删除一个结点
    bool searchNode(TreeNode<T>* node, T value);//4.用于在二叉搜索树中搜索结点是否存在
    void inOrder(TreeNode<T>* node);//5.用于按照中序遍历方式遍历二叉树
public://定义公共函数
    BinarySearchTree():root(NULL){}//6.构造函数,用于初始化二叉搜索树的根节点为NULL
    ~BinarySearchTree();//7.析构函数,用于释放动态分配的内存
    void insert(T value) {//8.用于向二叉搜索树中插入一个值
        root = insertNode(root, value);
    }
    void

http://www.xdnf.cn/news/504829.html

相关文章:

  • QLoRA: Efficient Finetuning of Quantized LLMs
  • acwing5579 增加模数
  • 深入了解 VPC 端点类型 – 网关与接口
  • Stacking(堆叠):集成学习中的“超级英雄团队”
  • STM32+ESP8266连接onenet新平台
  • 【嵌入式DIY实例-Arduino篇】-OLED实现乒乓游戏
  • Seata源码—5.全局事务的创建与返回处理二
  • nodejs特性解读
  • 小刚说C语言刷题—1230蝴蝶结
  • 业务系统上线为什么这么难
  • 【Unity 2023 新版InputSystem系统】新版InputSystem 如何进行项目配置并安装
  • 【RocketMQ Broker 相关源码】- 清除不活跃的 broker
  • JavaScript【6】事件
  • windows 11安装Python3.9、mujoco200、mujoco_py2.0.2.8、metaworld
  • 51单片机仿真突然出问题
  • 如何在 Windows 11 或 10 的 CMD 中检查固件
  • 元件伏安特性及基尔霍夫定理的相量形式
  • 【as 在长难句中有哪几种翻译?】
  • 北京市工程技术人才职称评价基本标准条件解读
  • PLC和变频器之间如何接线
  • 2020CCPC河南省赛题解
  • V型不锈钢对夹球阀:高性价比工业控制解决方案-耀圣
  • 项目复习(2)
  • 黑客帝国电子表html
  • java中的包机制
  • 信任的进阶:LEI与vLEI协同推进跨境支付体系变革
  • (面试)View相关知识
  • 【强化学习】#5 时序差分学习
  • BBR 的 buffer 动力学观感
  • C++(19):内联(inline)函数