1.什么是二叉堆? 二叉堆本质上是一种完全二叉树,它分为两个类型。 最大堆—最大堆的任何一个父节点的值,都大于或等于它左、右孩子节点的值。 最小堆—最小堆的任何一个父节点的值,都小于或等于它左、右孩子节点的值。 二叉堆的根节点叫做堆顶。 最大堆和最小堆的特点决定了:最大堆堆顶是整个堆中的最大元素;最 ...
分类:
其他好文 时间:
2020-07-30 14:04:44
阅读次数:
66
from typing import List# 这道题看了大佬写的代码,经过自己的理解写出来了。# 从最外围的四周找有没有为O的,如果有的话就进入深搜函数,然后深搜遍历# 判断上下左右的位置是否为Oclass Solution: def solve(self, board: List[List[s ...
分类:
其他好文 时间:
2020-07-29 21:52:19
阅读次数:
71
平衡二叉树-双旋转 左右旋转 ? 在某些情况下,单旋转不能完成平衡二叉树的转换 针对于左右型(LRR,LRL) 右左旋转 针对于右左型(RLL,RLR) ...
分类:
其他好文 时间:
2020-07-29 21:47:19
阅读次数:
60
FPGA的时钟资源介绍主要分为三部分。第一部分是区域结构,第二部分是元件功能,第三部分是实现方式。 首先FPGA的时钟资源负责驱动所有的时序逻辑,生产商尽力使得时钟资源充分,可靠,为了达成这一目的,xilinx采取了结构化的时钟资源布局方式。 首先将整个板子分为左右两部分,宽度完全一致,中间是大动脉 ...
分类:
其他好文 时间:
2020-07-29 17:33:45
阅读次数:
115
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6799 题目大意: 给你一个由左右括号和乘法符号组成的字符串 ()* ,可以将*变成左括号或、右括号、空字符,求能生成的最短的合法括号序列 中字典序最小的。(左括号字典序小于右括号) 合法括号序列举例: ...
分类:
其他好文 时间:
2020-07-29 15:34:20
阅读次数:
88
八种排序算法可以按照如图分类,本文主要介绍快速排序。 交换排序 所谓交换,就是序列中任意两个元素进行比较,根据比较结果来交换各自在序列中的位置,以此达到排序的目的。 快速排序 快速排序的思想很简单,就是先把待排序的数组拆成左右两个区间,左边都比中间的基准数小,右边都比基准数大。接着左右两边各自再做同 ...
分类:
编程语言 时间:
2020-07-29 15:15:23
阅读次数:
74
#一、标题 # 一级标题 ## 二级标题 ### 三级标题 #### 四级标题 ##### 五级标题 ###### 最小只有六级标题 #二、字体 加粗 要加粗的文字左右分别用两个*号包起来 斜体 要倾斜的文字左右分别用一个*号包起来 斜体加粗 要倾斜和加粗的文字左右分别用三个*号包起来 删除线 要加 ...
分类:
其他好文 时间:
2020-07-29 10:03:06
阅读次数:
77
1.可持久化线段树 又称主席树,因为发明这一算法的人的名字缩写为HJT。 主席树可以储存各个历史状态,如果用普通线段树,每个状态都是 4n 的,内存和时间开销极大,而主席树通过动态开点,先继承上一状态的左右儿子节点指针,再进行修改,每次修改的时间和空间都可以优化到 \(\log n\) 级别。 通过 ...
分类:
其他好文 时间:
2020-07-28 22:48:06
阅读次数:
88
思路: 公共祖先需要分为三种情况: 1.pq包含在root的左右子树中,则root就是他们公共祖先 2.pq包含在root的右子树中,则公共祖先是右子树 3.pq包含在root的左子树中,则公共祖先在左子树 代码: /** * Definition for a binary tree node. * ...
分类:
其他好文 时间:
2020-07-28 17:01:57
阅读次数:
59
概念 线段树是一棵二叉树,线段是上每个结点对应的是序列的一段区间。如图(以下图片为引用) 容易发现,根节点对应的是整个区间[0,n-1].若一个结点对应的区间为[l,r],当l=r时,它是一个叶结点,没有左右儿子;否则他一定有两个儿子,令mid=(l+r)/2,则左儿子对应的区间为[l,mid],右 ...
分类:
其他好文 时间:
2020-07-28 16:49:56
阅读次数:
55