entities.entities_for_tag

21 total results found

二叉树的遍历及代码实现

数据结构与算法 二叉树

二叉树的遍历指的是从根节点出发,按照某种次序依次访问二叉树中的所有结点,使得每个结点被访问一次且仅被访问一次。 有多种方式可以遍历二叉树,如果限制从左到右的习惯方式,主要分为三种:前序遍历、中...

由 学院君 发布于1 month ago    浏览数: 74    点赞数: 0

压缩算法的基础(上):赫夫曼树及其构建

数据结构与算法 二叉树

今天我们继续分享二叉树的一些应用:赫夫曼树。 我们日常使用压缩和解压软件的频率可谓是非常高,而最基本的压缩算法 —— 赫夫曼编码,其中使用的二叉树就是赫夫曼树。在介绍赫夫曼编码之前,我们先来介...

由 学院君 发布于1 month ago    浏览数: 41    点赞数: 0

压缩算法的基础(下):赫夫曼编码及其应用

数据结构与算法 二叉树

上篇文章我们介绍了赫夫曼树的定义和构建,当然,赫夫曼不会闲到为了转化下成绩等级专门实现赫夫曼树,当年,他研究赫夫曼树是为了解决远距离通信(主要是电报)数据传输的最优问题。 比如,我们需要在网络...

由 学院君 发布于1 month ago    浏览数: 39    点赞数: 0

解决 TopK 问题的利器(上):堆和堆的构建

数据结构与算法 二叉树

什么是堆 堆是一种特殊的二叉树,具备以下特性: 堆是一个完全二叉树 每个节点的值都必须大于等于(或小于等于)其左右孩子节点的值 如果每个节点的值都大于等于左右孩子节点的值,这样的堆叫...

由 学院君 发布于1 month ago    浏览数: 43    点赞数: 0

红黑树的动态平衡实现原理分析

数据结构与算法 二叉树

插入节点 红黑树规定,插入的节点必须是红色的。而且,二叉排序(查找)树中新插入的节点都是放在叶子节点上。首先,我们来看两种最简单的情况: 如果插入节点的父节点是黑色的,那我们什么都不用做,...

由 学院君 发布于1 month ago    浏览数: 22    点赞数: 0

红黑树的特性和算法复杂度

数据结构与算法 二叉树

前面几篇分享中我们陆续介绍了平衡二叉树的定义、实现原理、构建过程演示以及对应的实现代码,我们提到平衡二叉树是最理想的二叉排序树,性能最好,也最稳定,但是缺点是维护成本高,需要在插入和删除节点时维...

由 学院君 发布于1 month ago    浏览数: 45    点赞数: 0

平衡二叉树的构建实现过程演示

数据结构与算法 二叉树

我们在上一篇文章中分享了平衡二叉树的定义和实现原理,这一节我们来演示如何通过代码实现平衡二叉树,最后分析下平衡二叉树的算法复杂度。 实例演示 在开始之前,我们先通过一个对比来加强理解,在没有...

由 学院君 发布于1 month ago    浏览数: 46    点赞数: 0

平衡二叉树(AVL)的定义和实现原理

数据结构与算法 二叉树

引子 上一篇我们介绍了二叉排序树,并且提到理想情况下,二叉排序树的插入、删除、查找时间复杂度都是 O(logn),非常高效,而且它是一种动态的数据结构,插入删除性能合查找一样好,不像之前提到的...

由 学院君 发布于1 month ago    浏览数: 55    点赞数: 0

二叉排序(查找)树的定义及实现

数据结构与算法 二叉树

为什么要引入二叉排序树 我们前面已经介绍了很多数据结构,比如数组、链表、散列表等,数组查找性能高,但是插入、删除性能差,链表插入、删除性能高,但查找性能差,在不考虑散列冲突的话,散列表的插入、...

由 学院君 发布于1 month ago    浏览数: 58    点赞数: 0

二叉树的存储

数据结构与算法 二叉树

前面我们聊到树和二叉树的定义和特性,树这种结构不能简单通过线性表的前后关系来存储,在线性表中,一个节点只有至多一个前驱节点和至多一个后驱节点,树则不然,一个节点可能有多个后驱节点,这个时候,我们...

由 学院君 发布于1 month ago    浏览数: 52    点赞数: 0

二叉树的定义及其特性

数据结构与算法 二叉树

在继续介绍其它字符串匹配算法 Trie 树之前,我们先来讲讲树这种数据结构,因为 Trie 树也是一棵树。树比前面讲的数据结构(数组、链表、栈、队列、散列表等)都要复杂,我们需要花大量篇幅来介绍...

由 学院君 发布于1 month ago    浏览数: 96    点赞数: 0

Leetcode基础刷题之PHP解析(129. Sum Root to Leaf Numbers)

博客

2019-8-21 星期三 开始吧 上一题链接Leetcode基础刷题之PHP解析(128. Longest Consecutive Sequence) 题目描述 给定一个只包含0-9的...

由 吴亲库里 发布于3 months ago    浏览数: 362    点赞数: 1

Leetcode基础刷题之PHP解析(124. Binary Tree Maximum Path Sum)

博客

2019-8-14 星期三 开始吧 上一题链接117. Populating Next Right Pointers in Each Node II 题目描述 给定一棵非空二叉树,求最...

由 吴亲库里 发布于3 months ago    浏览数: 359    点赞数: 0

Leetcode基础刷题之PHP解析(117. Populating Next Right Pointers in Each Node II)

博客

上一题链接Leetcode基础刷题之PHP解析(116. Populating Next Right Pointers in Each ) 题目描述 这里是上一题的第二版,这道题让我们...

由 吴亲库里 发布于3 months ago    浏览数: 362    点赞数: 0

Leetcode基础刷题之PHP解析(116. Populating Next Right Pointers in Each )

博客

上一题链接Leetcode基础刷题之PHP解析( 115. Distinct Subsequences) 题目描述 给定一棵二叉树,它的所有叶子节点都在同一层,每一个父节点都有两个子节...

由 吴亲库里 发布于3 months ago    浏览数: 327    点赞数: 1