【算法框架】二叉搜索树BST
2022/3/21 22:27:35
本文主要是介绍【算法框架】二叉搜索树BST,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
【算法框架】二叉搜索树BST
提取自labuladong得算法小抄
查找数是否存在
void BST(TreeNode root,int target){ if (root.val == target){ ... ... //找到目标之后,所需要做的事 } //递归 if (root.val < target) BST(root.right,target); if (root.val > target) BST(root.left,target);
插入一个数
TreeNode insertIntoBST(TreeNode root ,int val){ // 找到空位插入 if(root == null) return new TreeNode(val); // 如果已经存在就不用重复插入了,直接返回 if(root.val == val) return root // val大,则应该插在右子树上面 if (root.val<val) root.right = insertIntoBST(root.right,val); // val小,则应该插在左子树上面 if(root.val>val); root.left = insertIntoBST(root.left,val); return root; }
删除一个数
TreeNode deleteNode(TreeNode root ,int key){ if (root.val=key){ // 删除操作 }elsr if(root.val>key){ //去左子树寻找key root.left = deletNode(root.left,key); }else if(root.val<key){ //去右子树寻找key root.right= deletNode(root.right,key); } return root; }
这篇关于【算法框架】二叉搜索树BST的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24Java中定时任务实现方式及源码剖析
- 2024-11-24鸿蒙原生开发手记:03-元服务开发全流程(开发元服务,只需要看这一篇文章)
- 2024-11-24细说敏捷:敏捷四会之每日站会
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解