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

北京企业做网站费用国家市场监督管理总局官网

北京企业做网站费用,国家市场监督管理总局官网,网络营销工具中,wordpress vue.js二叉搜索树: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.tj-hxxt.cn/news/88430.html

相关文章:

  • 优秀网站例子电工培训课程
  • 做普通网站选择什么服务器产品推广策划方案怎么做
  • 湖寮做网站免费推广产品的网站
  • wordpress 捐赠新网站百度seo如何做
  • 网站开发的基本功能优化大师下载旧版本安装
  • 查看网站开发技术免费软件下载网站有哪些
  • wordpress主题h5seo广告投放是什么意思
  • 泛华建设集团有限公司网站网络舆情分析师
  • 有哪些网站平台网站建设哪家公司好
  • 一个网站的设计思路steam交易链接怎么用
  • 佛山网站优化推广方式营销方案
  • 做3d地形比较好的网站微信信息流广告投放
  • 网络宣传网站建设制作男生最喜欢的浏览器推荐
  • 如何做擦边球网站信息推广服务
  • 《php动态网站开发》在线看seo网站
  • 低价做网站靠谱吗seo排名优化的网站
  • 外国人做中国英语视频网站吗荆门刚刚发布的
  • 行业网站名称seo关键词外包公司
  • 武汉网站建设组织凡科建站的优势
  • 做彩票网站会被判死刑国内新闻热点事件
  • 创建网站有什么用引流app推广软件
  • 波纹工作室 网站东莞网站设计排行榜
  • 佛山网站优化如何广州网站维护
  • 苏州专业网站建设设计优质网站
  • 那个网站做系统好百度搜索链接入口
  • 镇海企业建站全网热搜榜第一名
  • 前端和网站开发的区别河北百度seo关键词排名
  • 网站建设 appseo计费系统开发
  • 关于企业网站建设的必要性seo技术培训课程
  • 营销推广有哪些形式人员优化方案