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

wordpress 软件重庆seo排名公司

wordpress 软件,重庆seo排名公司,做一个游戏app要多少钱,做网站要几天摘要: 1,Treap的介绍 2,Treap节点的插入 3,Treap节点的删除 4,Treap和笛卡尔树的区别 1,Treap的介绍 Treap又叫树堆,属于一种自平衡二叉搜索树,是由单词Tree和Heap构成,是…

摘要:

1,Treap的介绍

2,Treap节点的插入

3,Treap节点的删除

4,Treap和笛卡尔树的区别

1,Treap的介绍

Treap又叫树堆,属于一种自平衡二叉搜索树,是由单词Tree和Heap构成,是一种具有二叉搜索树和堆两种数据结构的特性。在前面我们讲过《笛卡尔树》,它也是一种具有二叉搜索树和堆的两种数据结构的特性,关于它俩的区别我们后面在介绍。

我们知道如果随机使用一组数据创建二叉搜索树,则二叉搜索树很可能会退化成一个链表,增加了操作的时间复杂度。这个时候我们可以给每个节点随机生成一个优先级,这个优先级要满足堆的特性。因为是随机生成的,所以从概率上来说退化成链表的可能性就非常小。

Treap在节点插入和删除的时候也会进行旋转,因为它不是高度平衡的,所以Treap比我们前面讲的《AVL树》要简单很多,在讲解之前我们先来看下Treap的节点类。

Java 代码:

class TreapNode {int key, priority;TreapNode left, right;public TreapNode(int key) {this.key = key;// 节点优先级,满足堆的特性,随机生成的this.priority = new Random().nextInt();this.left = this.right = null;}
}

C++ 代码:

struct TreapNode {int key, priority;TreapNode *left = nullptr;TreapNode *right = nullptr;// 节点优先级priority,满足堆的特性,随机生成的TreapNode(int key) : key(key), priority(rand()) {}
};

节点类中有一个优先级priority,它是随机生成的,要满足堆的特性,这里我们使用最大堆,堆顶元素是优先级最高的。

再来看下节点的旋转,旋转不会改变二叉搜索树的特性,但会改变堆的特性,旋转的目的就是把优先级高的节点往上调整,优先级低的节点往下调整,这和我们前面讲的《数据结构堆》类似,不过在堆中是直接交换,不是通过旋转。

ea1a7ae8745d50a6669026df1ca39869.png

357713933934536f35e12ef2edf3b2c8.png

http://www.hrbkazy.com/news/49755.html

相关文章:

  • 九台网站济南竞价托管公司
  • 武汉免费网站建站天天seo伪原创工具
  • 新建的网站需要维护吗广东seo网站优化公司
  • 泰州做网站需要多少钱竞价推广开户电话
  • 网架公司哪个好seo新手入门教程
  • 十堰响应式网站建设手机端竞价恶意点击
  • 网页编辑人头上海网站排名优化怎么做
  • wordpress 登陆才能看seo搜索优化怎么做
  • 苏州建网站哪家网络舆情管控
  • 织梦网站会员功能新闻最近的新闻
  • 网页设计师培训多少钱百度小程序对网站seo
  • 网站系统建设的目标网络软文怎么写
  • qq空间上传wordpressseo服务靠谱吗
  • 怎么用html做图片展示网站海口做网站的公司
  • 网站制作加教程视频网站建设方案设计书
  • 网站开发工程师简历竞价推广账户托管费用
  • 美国做海关数据知名网站谷歌推广外包
  • cpa广告联盟网站建设百度竞价托管代运营
  • so域名网站百度快速排名技术培训
  • 嘉兴品牌网站建设网站优化seo教程
  • 江苏建设一体化平台网站代发百度关键词排名
  • 宁波seo优化公司网站搜索引擎优化
  • 大连市卫生健康委员会网站友情链接平台网站
  • dw做网站怎么写弹出客服邮箱站长工具樱花
  • 上线了做网站价格贵最新一周新闻
  • 免费做网站电子商务推广方式
  • 如何在国外网站做翻译兼职黑科技引流推广神器
  • 安阳网站建设公司最佳磁力链ciliba
  • 网站快速排名怎么做百度推广引流
  • 当前网站开发用什么软件优化搜狗排名