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

做最精彩的绳艺网站百度知道答题赚钱

做最精彩的绳艺网站,百度知道答题赚钱,查询网站whois,仿百度百家模板wordpress主题前言 红黑树是一种自平衡二叉搜索树#xff0c;确保在插入和删除操作后#xff0c;树的高度保持平衡#xff0c;从而保证基本操作#xff08;插入、删除、查找#xff09;的时间复杂度为O(log n)。 实现原理 红黑树具有以下性质#xff1a; 每个节点要么是红色#…前言 红黑树是一种自平衡二叉搜索树确保在插入和删除操作后树的高度保持平衡从而保证基本操作插入、删除、查找的时间复杂度为O(log n)。 实现原理 红黑树具有以下性质 每个节点要么是红色要么是黑色。根节点是黑色的。每个叶子节点NIL节点通常是空节点是黑色的。如果一个节点是红色的则它的两个子节点都是黑色的。从任一节点到其每个叶子的所有路径都包含相同数目的黑色节点。 动画过程 Red/Black Tree Visualization 具体代码实现 public class RedBlackTree {private static final boolean RED false;private static final boolean BLACK true;private class Node {int key;Node left, right, parent;boolean color;Node(int key, boolean color, Node parent) {this.key key;this.color color;this.parent parent;}}private Node root;private Node TNULL;public RedBlackTree() {TNULL new Node(0, BLACK, null);root TNULL;}private void rotateLeft(Node x) {Node y x.right;x.right y.left;if (y.left ! TNULL) {y.left.parent x;}y.parent x.parent;if (x.parent null) {this.root y;} else if (x x.parent.left) {x.parent.left y;} else {x.parent.right y;}y.left x;x.parent y;}private void rotateRight(Node x) {Node y x.left;x.left y.right;if (y.right ! TNULL) {y.right.parent x;}y.parent x.parent;if (x.parent null) {this.root y;} else if (x x.parent.right) {x.parent.right y;}y.right x;x.parent y;}private void insertFix(Node k) {Node u;while (k.parent.color RED) {if (k.parent k.parent.parent.left) {u k.parent.parent.right;if (u.color RED) {u.color BLACK;k.parent.color BLACK;k.parent.parent.color RED;k k.parent.parent;} else {if (k k.parent.right) {k k.parent;rotateLeft(k);}k.parent.color BLACK;k.parent.parent.color RED;rotateRight(k.parent.parent);}} else {u k.parent.parent.left;if (u.color RED) {u.color BLACK;k.parent.color BLACK;k.parent.parent.color RED;k k.parent.parent;} else {if (k k.parent.left) {k k.parent;rotateRight(k);}k.parent.color BLACK;k.parent.parent.color RED;rotateLeft(k.parent.parent);}}if (k root) {break;}}root.color BLACK;}public void insert(int key) {Node node new Node(key, RED, null);node.left TNULL;node.right TNULL;Node y null;Node x this.root;while (x ! TNULL) {y x;if (node.key x.key) {x x.left;} else {x x.right;}}node.parent y;if (y null) {root node;} else if (node.key y.key) {y.left node;} else {y.right node;}if (node.parent null) {node.color BLACK;return;}if (node.parent.parent null) {return;}insertFix(node);}public Node search(int key) {return searchTreeHelper(this.root, key);}private Node searchTreeHelper(Node node, int key) {if (node TNULL || key node.key) {return node;}if (key node.key) {return searchTreeHelper(node.left, key);}return searchTreeHelper(node.right, key);}public void printTree() {printHelper(this.root, , true);}private void printHelper(Node root, String indent, boolean last) {if (root ! TNULL) {System.out.print(indent);if (last) {System.out.print(R----);indent ;} else {System.out.print(L----);indent | ;}String sColor root.color RED ? RED : BLACK;System.out.println(root.key ( sColor ));printHelper(root.left, indent, false);printHelper(root.right, indent, true);}}public static void main(String[] args) {RedBlackTree tree new RedBlackTree();tree.insert(55);tree.insert(40);tree.insert(65);tree.insert(60);tree.insert(75);tree.insert(57);tree.printTree();} }QA:待定
http://www.hkea.cn/news/14535972/

相关文章:

  • ps如何做ppt模板下载网站网站开发时间计划
  • 网站开发的技术难点网站建设 搜狐号
  • 郑州数码网站建设服务公司深圳网站制作联系电话
  • 成都网站建设常凡云用kid做教育网站域名
  • 网站访问pv量是指什么网站虚拟空间作用
  • 网站建设需要哪些网站开发需要哪些资料
  • 茶叶网站建设策划方案u001fwordpress 启动wordpress mu
  • 网站建设 程序开发网站备案工信部时间
  • 企业手机端网站源码下载生活服务网站开发
  • 江西建设门户网站网站开发常见技术问题
  • 建设银行怎么从网站上改手机号码买链接
  • 小学校园网站建设简介wordpress 新建模板文件夹
  • 网站建设服务ysaigo企业网站管理系统最新4湖南岚鸿牛x1 0
  • jsp网站连接数据库wordpress大学主题安装
  • 自己可以免费做网站吗不做网站做百家号
  • 做网站游戏推广赚钱吗农业网站设计
  • 织梦网站修改首页图片谷歌seo和百度seo区别
  • 网站开发工作总结论文app注册推广任务平台
  • 上海网站建设建站织梦网站站标
  • 威海营销型网站建设陕西住房城乡建设厅网站
  • 在百度上建网站做网站配置服务器
  • 上海网站推广很好上海电信网站备案
  • 动漫网站建设前期策划成都网站开发公司哪家好
  • 网站模板套餐做网站本溪
  • 成都网站推广公司小羚羊网站怎么建设
  • 中山蓝图科技网站建设芜湖做网站建设公司
  • 网站建设 招聘粤健康app下载
  • 长春企业网站设计贵州百度竞价网页设计
  • asp网站图片万网做网站给网站源码
  • 公司付网站会员费科目怎么做私募基金网站建设要求