数据结构和算法 二叉树的中序遍历 一、中序遍历 中序遍历过程:先访问左子节点,然后访问当前节点,最后访问右子节点。 以下试一次中序遍历过程: 二、非递归实现 非递归方式遍历依赖栈来实现,因为要先访问子节点,然后访问父节点,因此必须要有... 02 月 09 日306评论树 阅读全文
数据结构和算法 [leetcode]94-二叉树的中序遍历 来源:力扣 (LeetCode) 链接:https://leetcode-cn.com/problems/binary-tree-inorder-traversal 著作权归领扣网络所有。商业转载请联系... 02 月 09 日145评论leetcode 树 阅读全文
数据结构和算法 144-二叉树的前序遍历 一、题目描述 给定一个二叉树,返回它的前序遍历结果。 例如输入二叉树 [1,null,2,3]: [crayon-682166d694261596706025/] 输出: [crayon-682166d... 02 月 08 日180评论leetcode 树 阅读全文
数据结构和算法 二叉树的先序遍历 一、先序遍历 先序遍历的意思是:先遍历当前节点,再分别遍历左、右子节点。 例如一棵二叉树为: 它的先序遍历序列 (红色虚线标出来的) 为:[1, 2, 4, 3, 5 6] 。 二、递归实现 递归的实现很简... 02 月 08 日205评论树 阅读全文
数据结构和算法 《剑指 offer 》面试题 8:二叉树的下一个节点 一、题目 给定一颗二叉树和其中的一个节点,如何找出中序遍历序列的下一个节点?树中的节点除了有两个分别指向左右子节点的指针,还有一个指向父节点的指针。 以下面的二叉树为例,它的中序遍历序列是:[2, 4... 02 月 08 日493评论剑指 offer 树 阅读全文
数据结构和算法 graphviz 画二叉树对齐的小技巧 一、问题描述 画二叉树的时候,总是无法对齐圆点得到对称的节点。例如: [crayon-682166d694813136487667/] 画出来的效果: 红色标出来的 4 个线条,长度不一样,子节点看起来不... 02 月 07 日947评论graphviz 阅读全文
数据结构和算法 105-从前序与中序遍历序列构造二叉树 来源:力扣 (LeetCode) 链接:https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-... 02 月 07 日233评论leetcode 阅读全文
数据结构和算法 《剑指 offer 》面试题 7:重建二叉树 一、题目 输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不包含重复的数字。 例如,输入前序遍历序列 [1, 2, 4, 7, 3, 5, 6, 8] 和中序... 02 月 07 日464评论剑指 offer 阅读全文
数据结构和算法 排序算法四:梳排序 一、梳排序简介 梳排序是冒泡排序的一种优化方案,主要是为了解决冒泡排序中的尾部小数值问题。它主要的思想是通过比较元素和固定步长位置上的数据,先进行部分优化,然后逐步减少步长,以此来对数据进行预处理。 ... 02 月 07 日571评论排序 阅读全文
数据结构和算法 数据结构之 B 树 一、 B 树的基本概念 B 树是一种多叉树,被广泛应用于数据库索引中。它也是一种特殊的搜索树,和搜索树最大的不同在于它的每个节点都包含了 n 个关键字和 n+1 个指向子节点的指针。它的表现形式为: B 树的特点: ... 12 月 15 日612评论树 阅读全文