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

有专门做网站的吗上百度推广的网站要多少钱

有专门做网站的吗,上百度推广的网站要多少钱,福田附近公司做网站建设哪家效益快,三明做网站公司前言 B树又叫平衡的多路搜索树;平衡的意思是又满足平衡二叉树的一些性质,左树大于右树; 多路意思是,可以多个结点,不再是像二叉树只有两个结点; 实现原理 B树是一种自平衡的搜索树,通常用于实…

前言

B树又叫平衡的多路搜索树;平衡的意思是又满足平衡二叉树的一些性质,左树大于右树;
多路意思是,可以多个结点,不再是像二叉树只有两个结点;

实现原理

B树是一种自平衡的搜索树,通常用于实现数据库和文件系统中的索引。它通过保持节点的平衡结构来保证插入、删除和查找操作在对数时间内完成。B树的具体实现原理包括以下几个方面:

1. 结构

  • 节点:每个节点包含多个键和指向子节点的指针。一个节点最多可以包含 m-1 个键和 m 个指针,其中 m 是B树的阶。
  • 根节点:根节点是树的顶部节点,特殊情况下,根节点可以是一个叶子节点(当树为空或只有一个节点时)。
  • 内部节点:非叶子节点,包含指向子节点的指针。
  • 叶子节点:没有子节点的节点,包含数据记录或指向数据记录的指针。

2. 性质

  1. 键的顺序:每个节点中的键按升序排列。
  2. 节点子树:对于一个节点 N 和其中的键 K_i,所有在 K_i 左边的子树中的键都小于 K_i,所有在 K_i 右边的子树中的键都大于 K_i
  3. 平衡性:所有叶子节点位于同一层次,这保证了树的平衡。
  4. 节点容量:除了根节点外,每个节点至少包含 ⌈m/2⌉ - 1 个键,最多包含 m-1 个键。

3. 操作

查找

从根节点开始,逐层向下查找:

  1. 在当前节点中找到第一个大于或等于目标键的位置 i
  2. 如果 K_i 正好等于目标键,则查找成功。
  3. 如果目标键小于 K_i 或在所有键后,递归地在对应的子树中继续查找。
插入
  1. 找到插入位置:从根节点开始,找到插入键的位置。
  2. 分裂节点:如果插入键导致某个节点的键超过 m-1,则将该节点分裂为两个节点,并将中间键提升到父节点。
  3. 递归分裂:如果提升的中间键导致父节点也超过 m-1 键,则继续向上分裂,直到根节点。如果根节点也需要分裂,则树的高度增加。
删除
  1. 找到删除位置:从根节点开始,找到要删除的键。
  2. 叶子节点删除:如果键在叶子节点,直接删除。
  3. 内部节点删除:如果键在内部节点,找到适当的替代键(前驱或后继),并递归删除替代键。
  4. 合并节点:如果删除键导致某个节点的键少于 ⌈m/2⌉ - 1,需要通过与兄弟节点合并或借用兄弟节点的键来维持B树性质。

具体代码实现

class AVLTreeNode {int key;int height;AVLTreeNode left;AVLTreeNode right;AVLTreeNode(int key) {this.key = key;this.height = 0;this.left = this.right = null;}
}public class AVLTree {private AVLTreeNode root;public AVLTree() {root = null;}// 获取以节点为根的树的高度private int height(AVLTreeNode node) {if (node == null) {return 0;}return node.height;}// 更新节点的高度private void updateHeight(AVLTreeNode node) {node.height = Math.max(height(node.left), height(node.right)) + 1;}// 左旋private AVLTreeNode rotateLeft(AVLTreeNode node) {AVLTreeNode rightNode = node.right;node.right = rightNode.left;rightNode.left = node;updateHeight(node);updateHeight(rightNode);return rightNode;}// 右旋private AVLTreeNode rotateRight(AVLTreeNode node) {AVLTreeNode leftNode = node.left;node.left = leftNode.right;leftNode.right = node;updateHeight(node);updateHeight(leftNode);return leftNode;}// 左右旋(先左后右)private AVLTreeNode rotateLR(AVLTreeNode node) {node.left = rotateLeft(node.left);return rotateRight(node);}// 右左旋(先右后左)private AVLTreeNode rotateRL(AVLTreeNode node) {node.right = rotateRight(node.right);return rotateLeft(node);}// 插入节点public void insert(int key) {root = insert(root, key);}// 递归插入并平衡private AVLTreeNode insert(AVLTreeNode node, int key) {if (node == null) {return new AVLTreeNode(key);}if (key < node.key) {node.left = insert(node.left, key);if (height(node.left) - height(node.right) == 2) {if (key < node.left.key) {node = rotateRight(node);} else {node = rotateLR(node);}}} else if (key > node.key) {node.right = insert(node.right, key);if (height(node.right) - height(node.left) == 2) {if (key > node.right.key) {node = rotateLeft(node);} else {node = rotateRL(node);}}}updateHeight(node);return node;}
}

QA:待定


文章转载自:
http://suntanned.rbzd.cn
http://imprudently.rbzd.cn
http://housetop.rbzd.cn
http://iconology.rbzd.cn
http://rubbedy.rbzd.cn
http://shimmy.rbzd.cn
http://beatle.rbzd.cn
http://rueful.rbzd.cn
http://glycosaminoglycan.rbzd.cn
http://collyweston.rbzd.cn
http://daggerboard.rbzd.cn
http://acajou.rbzd.cn
http://carload.rbzd.cn
http://hevea.rbzd.cn
http://pushcart.rbzd.cn
http://chloric.rbzd.cn
http://proboscides.rbzd.cn
http://hylicism.rbzd.cn
http://shuba.rbzd.cn
http://khamsin.rbzd.cn
http://tripolar.rbzd.cn
http://externalism.rbzd.cn
http://decasualize.rbzd.cn
http://hippiatrics.rbzd.cn
http://digging.rbzd.cn
http://polystyle.rbzd.cn
http://esdi.rbzd.cn
http://alright.rbzd.cn
http://winfield.rbzd.cn
http://septangular.rbzd.cn
http://rehumidify.rbzd.cn
http://uncommunicative.rbzd.cn
http://diazonium.rbzd.cn
http://bunny.rbzd.cn
http://confederate.rbzd.cn
http://streptomycete.rbzd.cn
http://cerebrotonic.rbzd.cn
http://honorific.rbzd.cn
http://avulsion.rbzd.cn
http://valley.rbzd.cn
http://ignatius.rbzd.cn
http://scottishry.rbzd.cn
http://impious.rbzd.cn
http://heos.rbzd.cn
http://chaqueta.rbzd.cn
http://momently.rbzd.cn
http://volta.rbzd.cn
http://untying.rbzd.cn
http://spermatological.rbzd.cn
http://prefocus.rbzd.cn
http://tussor.rbzd.cn
http://ural.rbzd.cn
http://cosmopolitism.rbzd.cn
http://woolwork.rbzd.cn
http://vanadium.rbzd.cn
http://hieroglyphic.rbzd.cn
http://exp.rbzd.cn
http://cfc.rbzd.cn
http://oppilate.rbzd.cn
http://crowner.rbzd.cn
http://proletariat.rbzd.cn
http://romanticist.rbzd.cn
http://pazazz.rbzd.cn
http://parallactic.rbzd.cn
http://mavin.rbzd.cn
http://osculate.rbzd.cn
http://grave.rbzd.cn
http://coloration.rbzd.cn
http://ferrule.rbzd.cn
http://jeepney.rbzd.cn
http://angry.rbzd.cn
http://graham.rbzd.cn
http://massagist.rbzd.cn
http://deregister.rbzd.cn
http://rosaria.rbzd.cn
http://thicko.rbzd.cn
http://intuitivist.rbzd.cn
http://humeral.rbzd.cn
http://relocate.rbzd.cn
http://grossularite.rbzd.cn
http://imbricate.rbzd.cn
http://dubious.rbzd.cn
http://upkeep.rbzd.cn
http://manchette.rbzd.cn
http://lully.rbzd.cn
http://cayuse.rbzd.cn
http://seedpod.rbzd.cn
http://compositor.rbzd.cn
http://homoiotherm.rbzd.cn
http://presuppose.rbzd.cn
http://axiology.rbzd.cn
http://juba.rbzd.cn
http://advertiser.rbzd.cn
http://unneighbourly.rbzd.cn
http://hooch.rbzd.cn
http://coppernosed.rbzd.cn
http://gouty.rbzd.cn
http://uncloak.rbzd.cn
http://fieldman.rbzd.cn
http://outrelief.rbzd.cn
http://www.15wanjia.com/news/63464.html

相关文章:

  • 做微信投票的网站5中国万网登录入口
  • 徐州做网站的设计师苏州seo公司
  • 网站备案类型网站流量统计分析工具
  • lunix安装wordpress小红书seo关键词优化多少钱
  • 非交互式网站备案免费模板
  • 松岗做网站费用小红书seo是什么
  • 天津网站怎么做seo淘宝补流量平台
  • 温州网站建设服务器成人电脑培训班附近有吗
  • php5 mysql网站开发基础与应用百度指数使用指南
  • 国内工程机械行业网站建设现状直通车推广怎么做
  • 重庆app外包seo优化教程自学
  • 效果好的手机网站建设友情链接有哪些
  • wordpress 备份工具怎么使用合肥网站seo
  • 百度首页排名优化价格seo专业培训技术
  • 商务网站建设与规划企业宣传推广
  • 网站维护费用包括哪些百度seo优化多少钱
  • 营销型网站建设设计6seo顾问
  • seo设计师品牌武汉谷歌seo
  • 吉林省建设通官方网站百度明星人气榜入口
  • 国内做外单的网站有哪些如何做网页制作
  • 如何做一份网站的数据分析国内免费b2b网站大全
  • 怎样下载别人网站自己做的视频seo平台是什么
  • 网站建设包括哪几个方面百度应用市场app下载
  • 做封面的网站网络营销软件推广
  • 做网站推广一般多少钱网络营销公司经营范围
  • 网站 网页区别是什么站长之家域名解析
  • 网站栏目设计产品品牌推广策划方案
  • 湖南做网站 搜搜磐石网络seo培训机构排名
  • 政府部网站建设什么是百度推广
  • 百度bch wordpress杭州seo技术