检查子树。你有两棵非常大的二叉树:T1,有几万个节点;T2,有几万个节点。设计一个算法,判断 T2 是否为 T1 的子树。 如果 T1 有这么一个节点 n,其子树与 T2 一模一样,则 T2 为 T1 的子树,也就是说,从节点 n 处把树砍断,得到的树与 T2 完全相同。 注意:此题相对书上原题略有 ...
分类:
其他好文 时间:
2021-05-24 07:55:54
阅读次数:
0
请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。 例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果: [ [3], [2 ...
分类:
其他好文 时间:
2021-05-24 07:46:56
阅读次数:
0
队列 1.先进先出 2.可以使用数组或者链表来模拟队列 数组形式 单向队列 首先需要俩个指针,front和rear。front表示头指针,rear表示尾指针。 front = -1,rear = -1 front==rear:该队列为空 rear==Maxsize-1:该队列满了 但是单纯的这样设计 ...
分类:
编程语言 时间:
2021-05-24 07:31:45
阅读次数:
0
概念 一棵二叉树由根结点、左子树和右子树三部分组成,若规定 D、L、R 分别代表遍历根结点、遍历左子树、遍历右子树,则二叉树的遍历方式有 6 种:DLR、DRL、LDR、LRD、RDL、RLD。由于先遍历左子树和先遍历右子树在算法设计上没有本质区别,所以,只讨论三种方式: DLR--前序遍历(根在前 ...
分类:
其他好文 时间:
2021-05-24 07:30:52
阅读次数:
0
(1)数据结构:LinkedList是一个实现了List接口和Deque接口的双端链表。 (1-1)双端链表: 双端链表与单链表的区别在于它不只第一个链结点有引用,还对最后一个链结点有引用。 (2)线程安全:线程不安全。 (3)修改操作:LinkedList底层的链表结构使它支持高效的插入和删除操作 ...
分类:
其他好文 时间:
2021-05-24 07:18:22
阅读次数:
0
(1)数据结构:数组+链表。 (2)线程安全:HashTable是线程安全的,因为HashTable内部的方法基本都经过Synchronized修饰。 (3)修改操作: (3-1)对Null键和Null值的支持:HashTable不允许有Null键和Null值,否则会抛出NullPointerExc ...
分类:
其他好文 时间:
2021-05-24 07:17:23
阅读次数:
0
Redis常用存储类型 Redis底层提供了5种数据结构:字符串、哈希、列表、集合、有序集合 下图非常形象的表示了数据结构: 字符串String 常用命令 EX seconds:设置失效时长,单位秒 PX milliseconds:设置失效时长,单位毫秒 NX:key不存在时设置value,成功返回 ...
分类:
其他好文 时间:
2021-05-24 06:52:11
阅读次数:
0
给定一个非空二叉树, 返回一个由每层节点平均值组成的数组。 示例 1: 输入: 3 / \ 9 20 / \ 15 7输出:[3, 14.5, 11]解释:第 0 层的平均值是 3 , 第1层是 14.5 , 第2层是 11 。因此返回 [3, 14.5, 11] 。 提示: 节点值的范围在32位有 ...
分类:
其他好文 时间:
2021-05-24 06:31:03
阅读次数:
0
给定两个非空二叉树 s 和 t,检验 s 中是否包含和 t 具有相同结构和节点值的子树。s 的一个子树包括 s 的一个节点和这个节点的所有子孙。s 也可以看做它自身的一棵子树。 示例 1:给定的树 s: 3 / \ 4 5 / \ 1 2给定的树 t: 4 / \ 1 2返回 true,因为 t 与 ...
分类:
其他好文 时间:
2021-05-24 05:46:08
阅读次数:
0
前几天写了一篇canny边缘检测算法,比较偏算法公式和实现,具体为什么这样做和原理没有讲清楚,想在这一篇中讲一下,让研究canny算法的人不仅知道算法公式和实现,同时也能明白为什么这样做。 主要参考下面一个博客文章 https://www.cnblogs.com/xiximayou/p/131394 ...
分类:
编程语言 时间:
2021-05-24 05:41:01
阅读次数:
0