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

北京企业做网站费用软文推广经典案例

北京企业做网站费用,软文推广经典案例,装配式建筑信息平台,建个企业网站收费二叉搜索树:BST(Binary Search Tree) 二叉搜索树是二叉树,可以为空,如果不为空,满足以下性质: 非空左子树的所有键值小于其根节点的键值非空右子树的所有键值大于其根节点的键值左、右字数本身也都是二叉搜索树 二叉…

二叉搜索树:BST(Binary Search Tree)
二叉搜索树是二叉树,可以为空,如果不为空,满足以下性质:

  • 非空左子树的所有键值小于其根节点的键值
  • 非空右子树的所有键值大于其根节点的键值
  • 左、右字数本身也都是二叉搜索树

二叉搜索树的特点:

  • 二叉搜索树的特点就是相对较小的值总是保存在左节点上,相对较大的值总是保存在右节点上
  • 查找效率非常高

二叉搜索树常见的操作:

  • insert(key, value):向树中插入数据
  • search(key):在树中查找
  • remove(key):从树中移除
  • update(key,value):修改节点数据
  • inOrderTraverse:通过中序遍历方式遍历所有节点
  • preOrderTraverse:通过先序遍历方式遍历所有节点
  • postOrderTraverse:通过后序遍历方式遍历所有节点
  • min:返回树中最小的键/值
  • max:返回树中最大的键/值
class Node {constructor(key) {this._key = key;this._left = null;this._right = null;}
}
class BinarySearchTree {constructor() {this._root = null;}insert(key) {const insertNode = (node, newNode) => {if(newNode._key <= node._key) {if(node._left === null) {node._left = newNode;} else {insertNode(node._left, newNode);}} else {if(node._right === null) {node._right = newNode;} else {insertNode(node._right, newNode);}}}const newNode = new Node(key)if (this._root === null) {this._root = newNode} else {insertNode(this._root, newNode)   }}preOrderTraverse(handler = (value) => {console.log(value)}) {const preOrderTraverseNode = (node) => {if (node === null) {return }handler(node._key)preOrderTraverseNode(node._left)preOrderTraverseNode(node._right)}preOrderTraverseNode(this._root)}midOrderTraverse(handler = (value) => {console.log(value)}) {const midOrderTraverseNode = (node) => {if (node === null) {return }midOrderTraverseNode(node._left)handler(node._key)midOrderTraverseNode(node._right)}midOrderTraverseNode(this._root)}postOrderTraverse(handler = (value) => {console.log(value)}) {const postOrderTraverseNode = (node) => {if (node === null) {return }postOrderTraverseNode(node._left)postOrderTraverseNode(node._right)handler(node._key)}postOrderTraverseNode(this._root)}min() {if (this._root === null) {return null}let node = this._rootwhile(true) {if (node._left === null) {return node._key}node = node._left}}max() {if (this._root === null) {return null}let node = this._rootwhile(true) {if (node._right === null) {return node._key}node = node._right}}search(key) {const searchNode = (node, key) => {if (node === null) {return false}if (node._key === key) {return true}if (key < node._key) {return searchNode(node._left, key)} else {return searchNode(node._right, key)}}return searchNode(this._root, key)}remove(key) {if (this._root === null) {return false}let current = this._rootlet parent = nulllet isLeftChild = truewhile (current._key !== key) {parent = currentif (key < current._key) {isLeftChild = truecurrent = current._left} else {isLeftChild = falsecurrent = current._right}if (current === null) {return false}}// 删除叶子节点if (current._left === null && current._right === null) {if (current === this._root) {this._root = null} else {if (isLeftChild) {parent._left = null} else {parent._right = null}}}// 删除有一个子节点else if (current._left === null ) {if (current === this._root) {this._root = current._right} else if (isLeftChild) {parent._left = current._right} else {parent._right = current._right}} else if (current._right === null) {if (current === this._root) {this._root = current._left} else if (isLeftChild) {parent._left = current._left} else {parent._right = current._left}} else {const getExChangeTargetNode = (current) => {let node = current._rightlet parentNode = currentlet isRightClick = truewhile(true) {if (node._left === null) {if (isRightClick)  {parentNode._right = node._right} else  {parentNode._left = node._right}return node}isRightClick = falseparentNode = nodenode = node._left}}const targetNode = getExChangeTargetNode(current);if (current !== this._root) {if (isLeftChild)  {parent._left = targetNode} else  {parent._right = targetNode}} else {this._root = targetNode}targetNode._right = current._righttargetNode._left = current._left}return true}}
http://www.hrbkazy.com/news/17356.html

相关文章:

  • 家用宽带怎么做网站 访问推广引流工具
  • 网站做支付需要准备什么条件建网站免费
  • 深圳网站制作网站建设怎么制作网站深圳博纳网络培训课程
  • 深圳做购物网站1+x网店运营推广
  • 网络设计网站多少钱google play下载安卓
  • 北京欢迎你网站建设建网站平台
  • 国企内网党建网站建设怎么制作公司网站
  • 商昊网站建设培训机构最新消息
  • 团队做网站的收获新站seo优化快速上排名
  • 建网站的电脑可以换位置吗网站排名
  • 服务器配置石家庄网络推广优化
  • 哪个网站做二手车抵押广州网络营销
  • 下载个人简历直接填写网站seo标题是什么意思
  • 营销型网站建设推来客网络百度在线使用网页版
  • 网站 头尾调用手机网站百度关键词排名
  • 各类网站建设营销推广与策划
  • 重庆必玩景点排名seo关键词排名在线查询
  • d84 wordpress网站seo优化服务商
  • 百度资源站长平台搜狗网页版
  • 阿里云服务器做电影网站武汉大学人民医院官网
  • 南宁疫情封路最新消息优化关键词方法
  • 上海网站推广优化公司网络营销与直播电商专升本
  • 淘客做网站的话虚拟主机多大简单网页制作成品免费
  • docker wordpress githubseo网站优化方案
  • 外贸网站建设 义乌自制网页
  • wordpress点赞排行深圳网站优化推广方案
  • 做任务给钱的网站品牌seo推广
  • 昆山建设信息网站网络推广运营推广
  • 南昌网站建设基本流程一个具体网站的seo优化方案
  • 网站 建设目标电子商务网站开发