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

哪种语言做网站最合适做网站投资要多少钱

哪种语言做网站最合适,做网站投资要多少钱,上海建设集团有限公司,四川刚刚发布的最新新闻一直想深入的研究一下#xff0c;并手写平衡二叉树的插入、删除代码。 二叉树是动态查找的典范#xff0c;但在极限情况下#xff0c;二叉树的查找效果等同于链表#xff0c;而平衡二叉树可以完美的达到 log ⁡ 2 n \log_2 n log2​n。 AVL简称平衡二叉树#xff0c;缩写…一直想深入的研究一下并手写平衡二叉树的插入、删除代码。 二叉树是动态查找的典范但在极限情况下二叉树的查找效果等同于链表而平衡二叉树可以完美的达到 log ⁡ 2 n \log_2 n log2​n。 AVL简称平衡二叉树缩写为BBST由苏联数学家 Adelse-Velskil 和 Landis 在 1962 年提出。 例子 将17921214263315402325一次插入到一棵初始化为空的AVL树中画出该二叉平衡树。 解过程和结果如下图所示。 所谓平衡二叉树就是指二叉树的左、右子树的深度差不超过2。每当超过时需要对二叉树的失衡节点进行平衡。 BBST用两个整数来表示左右子树的深度前面一个表示左子树的层数右边一个代表右子树的层数。 调整时首先需要找到要平衡的节点。找到调整节点后处理的方法有4种 上图中圆标号1的是左-左结构标号2的是左-右结构标号3的是右-右标号4的是右-左结构这4种结构的处理方式各有不同。 左-左结构即(21)结构 中间节点当作父节点最上面的节点当作右节点最下边节点当作左节点 左-右结构即(2-1)结构 最下面节点当作父节点父节点当作右节点中间节点当作左节点 右-右结构即(-2-1)结构 中间节点当作父节点最上面的节点当作左节点最下边节点当作右节点 右-左结构即(-21)结构 最下面节点当作父节点最上面节点当作左节点中间节点当作右节点 编程中计算左、右子树深度的代码如下 int deep(BBST* b) {if (b 0){return 0;}int ld deep(b-lchild);int rd deep(b-rchild) ;return ld rd ? ld 1 : rd 1; } 有了上面的理论和编程基础我们可以慢慢的调试并手动写出平衡二叉树的插入代码 int BBSTree::insert(ELEMENT* e) {if (mTree 0){mTree newnode(e);mSize 1;return 1;}BBST* t mTree;BBST* tc 0;Stack s;ELEMENT elem;while (1) {if (e-e t-data.e) {return 0;}else if (e-e t-data.e){if (t-rchild 0){tc newnode(e);tc-parent t;t-rchild tc;mSize;break;}else { elem.e (unsigned long long)t;s.push((ELEMENT*)elem);t t-rchild; }}else {if (t-lchild 0){tc newnode(e);tc-parent t;t-lchild tc;mSize;break;}else {elem.e (unsigned long long)t;s.push((ELEMENT*)elem);t t-lchild; }}}while (s.isEmpty() 0) {s.pop(elem);BBST* b (BBST*)elem.e;b-ld deep(b-lchild);b-rd deep(b-rchild);t-ld deep(t-lchild);t-rd deep(t-rchild);int high_diff b-ld - b-rd;int low_diff t-ld - t-rd;if(high_diff 2 low_diff 1){BBST* f (BBST*)b-parent;if (ff-lchild b){f-lchild t;}else if (ff-rchild b){f-rchild t;}BBST* old_tr t-rchild;t-rchild b;b-parent t;t-parent f;b-rchild old_tr;}else if (high_diff 2 low_diff -1){BBST* f (BBST*)b-parent;if (f-lchild b){f-lchild tc;}else if (f-rchild b){f-rchild tc;}BBST* ltmp t;while (ltmp-rchild){ltmp ltmp-rchild;}tc-lchild-parent ltmp-rchild;ltmp-rchild tc-lchild;BBST* rtmp b;while (rtmp-lchild){rtmp rtmp-lchild;}tc-rchild-parent rtmp-lchild;rtmp-lchild tc-rchild;tc-rchild b;tc-lchild t;b-parent tc;t-parent tc;tc-parent f;}else if (high_diff -2 low_diff 1){BBST* f (BBST*)b-parent;if (ff-lchild b){f-lchild tc;}else if (ff-rchild b){f-rchild tc;}BBST* rtmp b;while (rtmp rtmp-rchild){rtmp rtmp-rchild;}tc-lchild-parent rtmp-rchild;rtmp-rchild tc-lchild;BBST* ltmp t;while (ltmp ltmp-lchild){ltmp ltmp-lchild;}tc-rchild-parent ltmp-lchild;ltmp-lchild tc-rchild;tc-rchild t;tc-lchild b;b-parent tc;t-parent tc;tc-parent f;}else if (high_diff -2 low_diff -1){BBST* f (BBST*)b-parent;if (f f-lchild b){f-lchild t;}else if (f f-rchild b){f-rchild t;}BBST* old_tl t-lchild;t-lchild b;b-parent t;t-parent f;b-lchild old_tl;}tc t;t b;}return 0; }完整代码地址 https://github.com/satadriver/dataStruct
http://www.zqtcl.cn/news/325215/

相关文章:

  • 辽宁智能建站系统价格金融做市场广告挂哪些网站
  • 做外贸的有哪些网站互动平台游戏
  • 网站设计最好的公司idc网站模板源码下载
  • 网站建设历史视频制作软件有哪些
  • 加盟网站制作定制桥的设计网站建设
  • 深圳做宣传网站的公司开发电商网站多少钱
  • 自适应网站建设公司什么是网站死链
  • 自己给网站做支付接口wordpress elementor
  • 中国最新军事新闻网站优化推广
  • 有没有做3d衣服模型网站php网站开发目的
  • 东莞网站建设方案咨询wordpress易企秀
  • 漳诈网站建设免费的企业网站建设
  • 广州番禺区有什么好玩的地方优化软件有哪些
  • 面包机做面包网站wordpress获取用户注册时间
  • 福州网站建设个人兼职泰州seo排名扣费
  • 泰安北京网站建设公司个人自我介绍网页
  • 网站建设适应全屏如何自动深圳市哪里最繁华
  • 杭州网站推广公司阿里云wordpress 安装目录
  • 厦门优秀网站建设app项目开发流程
  • 工作设计室网站海外网站代理
  • 室内设计官方网站没网站怎么做cpa
  • 哪个网站做欧洲旅游攻略好wordpress编辑器字体大小
  • aspcms 手机网站wordpress 刷浏览量
  • dw网站首页的导航怎么做网站建设企业建站模板
  • 平台型网站建设网站关键词优化seo
  • 齿轮机械东莞网站建设技术支持热搜词排行榜关键词
  • 河南专业做网站网站推广优化c重庆
  • 温州网站建设钱建设工程公司网站
  • 做笑话网站全国大学生职业生涯规划大赛官网
  • 便宜购 网站建设平台推广引流怎么做