首页 > 其他分享 >4.5.2 树表查找

4.5.2 树表查找

时间:2025-01-16 22:03:16浏览次数:3  
标签:4.5 关键码 右子 给定 二叉 插入 查找 树表

在这里插入图片描述

文章目录

常见的树型查找表

在这里插入图片描述

常见的树型查找表由:二叉查找树、红黑树、B-树。
本文以二叉查找树为例,介绍树表查找。二叉查找树具有可动态插入关键码(key), 插入关键码时无需移动其他记录,树的数据有序,这3个特点。二叉树中,左子树的关键码都小于根结点的关键码,右子树的关键码都大于根结点的关键码。

二叉查找树–查找

在这里插入图片描述

在二叉查找树中查找,类似于折半查找(因为数据有序)。先比较给定值与根结点的关键码,如果相等,则查找成功。如果给定值<关键码,则进入左子树查找。若左子树为空,则查找失败,如果非空,则以左子树的根结点更新关键码,重复①-④。如果给定值>关键码,则进入右子树查找,若右子树为空,则查找失败,如果非空,则以右子树的根结点更新关键码,重复①-④。

二叉树插入

在这里插入图片描述
二叉查找树插入,就是在二叉查找树查找失败为前提,将给定值插入到空子树。例如,查找到左子树为空,此时查找失败,则将给定值作为左子树插入。二叉查找树的形态会由输入给定值的顺序决定,如果输入的给定值本身就有序,则会构造出单枝树(即只有左子树,或只有右子树)。

标签:4.5,关键码,右子,给定,二叉,插入,查找,树表
From: https://blog.csdn.net/qq_19069557/article/details/145168744

相关文章

  • 二分查找算法的3种模板-PYTHON
    classbinary_search(object):def__init__(self,nums,target):self.nums=numsself.target=targetdefbinary_search_template_1(self):iflen(self.nums)==0:return-1l,r=0,len(self.nums)-1......
  • 二叉查找树
    二叉查找树对于任意一棵子树,其左子树比根节点小,右子树比根节点大。即:左<根<右查找比较目标值与根节点的大小关系,大就往右边找;小就往左边找;直到找到为止,如果到最后没有找到,则返回nullptrNode*BST::searchByIter(Node*bst,DataTypetarget){while(bst!=......
  • IDEA如何查找所有的文件和文件内容?
    前言大家好,我是小徐啊。我们在Java开发中,一般都是用IDEA来开发的,而在开发的过程中,难免需要查找某些文件,或者文件中的内容,这个时候就需要使用快捷键去查找了。那么,具体怎么查找呢?今天小徐就来介绍下。如何查找所有文件首先,我们需要打开IDEA,然后,快速按下两次Shift按键。然后,就......
  • 排序数组中查找数组的第一个和最后一个位置
    leetcode34之前的博客里面有写到关于二分查找的实现方法,这次这个题目也需要使用到二分查找,关于二分查找的实现可以参考博客:二分查找思路由于题目中给出的数组是递增排序的,那么我们会优先考虑到使用二分查找法,数组中可能出现多个重复的target,我们要查找的就是第一个和最......
  • day01 704. 二分查找&&27. 移除元素
    二分查找(search方法)publicintsearch(int[]nums,inttarget){intleft=0;intright=nums.length-1;intmid;while(left<=right){mid=(left+right)/2;if(nums[mid]==target){returnmid;}elseif(nums[mid]<target){left=mid+1;}else{right=mid-1;}}retur......
  • 电脑“减肥”利器:两款重复文件查找神器大揭秘
    前言:        随着电脑使用时间的增长,我们往往会不知不觉地积累大量重复的软件和文件。手动一一核对这些重复项,不仅耗时费力,还容易遗漏。今天,我要为大家推荐两款重复文件查找神器,它们能够轻松帮我们清理硬盘空间,让电脑“瘦身”更高效。EasyDuplicateFinder:重复文件......
  • 达梦误删数据,挖掘归档,查找误删数据的语句
    客户误删数据,没有开启慢日志,只有备份文件和归档日志,挖掘归档,分析删除数据影响的范围大小 1、概述可以使用DBMS_LOGMNR包对归档日志进行挖掘,重构出DDL和DML等操作,并通过获取的信息进行更深入的分析。相关限制说明如下:1)目前DBMS_LOGMNR只支持对归档日志进行分析,配置归......
  • 查找总价格为目标值的两个商品、三数之和--------双指针的方法解决问题
    OJ题:LCR179.查找总价格为目标值的两个商品-力扣(LeetCode)OJ题:15.三数之和-力扣(LeetCode)一、 查找总价格为目标值的两个商品(俩数之和)1.题目描述购物车内的商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况,返回......
  • Day13-【软考】长文!什么是散列表查找?以及所有的排序算法是怎样的?如何进行堆排序(重点!)?
    文章目录什么是散列表查找?计算出空间相同怎么办?排序有哪些概念?排序方法有哪些分类?什么是直接插入排序?(稳定)什么是希尔排序?什么是冒泡排序?(稳定)什么是快速排序?O(nlog2为底n为真数)什么是简单选择/直接选择排序?什么是堆排序(重点!)?O(nlog2为底n为真数)比简单的选择排序,有什么优势......
  • python bs4 selenium 查找a href=javascript:();的实际点击事件和url
    在使用BeautifulSoup和Selenium时,处理href="javascript:;"的链接需要一些额外的步骤,因为这些链接不直接指向一个URL,而是通过JavaScript代码来执行某些操作。这可能包括导航到另一个页面、触发模态窗口、显示/隐藏内容等。以下是如何使用Selenium来查找和处理这......