上一页 1 2 3 4 5 6 7 8 9 ··· 19 下一页
摘要: "103. 二叉树的锯齿形层次遍历" 按题号刷的优势体现出来了2333333 这题实际上就是上个题 "102. 二叉树的层次遍历" 的演变,把上个题结果的偶数行list反转一下即可。。 上题通过人数10k+,这个题才3k,我想这题不经过上题思路的引导很容易思路被带弯把 阅读全文
posted @ 2018-11-06 19:14 ACBingo 阅读(200) 评论(0) 推荐(0) 编辑
摘要: "102. 二叉树的层次遍历" 二叉树的层次遍历很简单,用队列实现bfs即可。 这里难点是要区分出每一层的楼层,分别放到对应的数组里 实际上在bfs的时候判断好在什么时候就进入了下一层即可。 设置一个标记位,用来标记当前元素是本层的最后一个元素。显然,第一层的root只有一个元素,为第一个标记。 仔 阅读全文
posted @ 2018-11-06 18:59 ACBingo 阅读(197) 评论(0) 推荐(0) 编辑
摘要: "101. 对称二叉树" 一开始想复杂了呀,没有做出来 直观的思路就是反转这颗树,然后判断两颗树是不是相同的 网上大部分人的思路更为简洁,一开始没有想到。 即,判断左子树和右子树是否对称: 1. 当前左右值是否相同 2. 当前左子树的左子树和右子树的右子树是否相同 3. 当前左子树的右子树和右子树的 阅读全文
posted @ 2018-11-06 17:06 ACBingo 阅读(147) 评论(0) 推荐(0) 编辑
摘要: "99. 恢复二叉搜索树" 一开始想了好久没有什么好思路,去网上搜了一下,原来是中序遍历。 二叉搜索树的中序遍历是个(递增)有序数列,利用这个特性,我们可以很巧妙的解决这个题。 先看第二个例子,中序遍历后是:13245,观察发现只有一处发生了降序,只在第二位与第三位发生了降序情况,说明这两个数为异常 阅读全文
posted @ 2018-11-04 23:51 ACBingo 阅读(170) 评论(0) 推荐(0) 编辑
摘要: "97. 交错字符串" 题不难,dfs加回溯即可。实际上就是暴力搜索,穷举所有选择路径。 以s3的每一个字母做一个状态,就面临两个抉择,选s1还是选s2。选s1路不通的话,回溯回来改选s2即可。 class Solution { // 状态:String s1, String s2, String 阅读全文
posted @ 2018-11-04 22:54 ACBingo 阅读(169) 评论(0) 推荐(0) 编辑
摘要: "100. 相同的树" 判断两颗二叉树是否完全相同,把该树转变为数组展示形式, 前序遍历,然后看结果是否一致即可 阅读全文
posted @ 2018-11-04 22:05 ACBingo 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 看了一晚上才算看明白,明天继续看 "从头到尾彻底理解KMP" {java} public class KmpSearch { public static int indexOf(String s, String p) { if (p.length() == 0) return 0; int[] ne 阅读全文
posted @ 2018-09-24 02:04 ACBingo 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 背景 在项目中经常被log4j的各种依赖冲突搞的焦头烂额,久病成良医啊,在这里记录一下我对log4j的理解与分析 log4j 与 log4j2 log4j2是log4j的升级版,二者互不兼容,据说log4j2带来了十倍的性能提升,所以基本上不再使用log4j1 那么log4j 1代的依赖长什么样呢? 阅读全文
posted @ 2018-09-18 12:10 ACBingo 阅读(5139) 评论(0) 推荐(2) 编辑
摘要: 背景 近期有几个业务方提出一需求,期望判断一个用户在短期内是否存在刷屏现象,出现后能对其做出限制,并上报。 刷屏定义:取出用户近期20条评论,如果有50%的评论是"相似"的,则认为该用户是在刷屏 相似定义:两条评论的字符串最小编辑距离 / 长串的长度 BAN_SECOND 1000) { banRe 阅读全文
posted @ 2018-09-14 11:58 ACBingo 阅读(476) 评论(0) 推荐(0) 编辑
摘要: 1. CAP理论 2000年7月,加州大学伯克利分校的Eric Brewer教授在ACM PODC会议上提出CAP猜想。2年后,麻省理工学院的Seth Gilbert和Nancy Lynch从理论上证明了CAP。之后,CAP理论正式成为分布式计算领域的公认定理。 CAP理论为:一个分布式系统最多只能 阅读全文
posted @ 2018-09-10 10:49 ACBingo 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 最近在维护的一个比较旧的项目,发现总是隔一段时间JDBC就报错: Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot get a connectio 阅读全文
posted @ 2018-08-30 17:17 ACBingo 阅读(11768) 评论(0) 推荐(0) 编辑
摘要: "95. 不同的二叉搜索树 II" "96. 不同的二叉搜索树" 的扩展,现在要求把生成的算出来 这种建树问题一般来说都是用递归来解,这道题也不例外,划分左右子树,递归构造。 和我们之前dfs稍微有点不一样了,这次需要返回值了 class Solution { public List generat 阅读全文
posted @ 2018-08-08 21:47 ACBingo 阅读(153) 评论(0) 推荐(0) 编辑
摘要: "96. 不同的二叉搜索树" 这道题实际上是 Catalan Number卡塔兰数的一个例子。 就跟斐波那契数列一样,我们把n = 0 时赋为1,因为空树也算一种二叉搜索树,那么n = 1时的情况可以看做是其左子树个数乘以右子树的个数,左右字数都是空树,所以1乘1还是1。那么n = 2时,由于1和2 阅读全文
posted @ 2018-08-08 21:09 ACBingo 阅读(315) 评论(0) 推荐(0) 编辑
摘要: "98. 验证二叉搜索树" 一个二叉搜索树的中序遍历肯定是个有序的数组。所以一个比较直接的做法就是,我们得到其中序遍历,然后看起数组是否递增即可 略微优化一点呢,就是边中序遍历,边判断 阅读全文
posted @ 2018-08-07 23:36 ACBingo 阅读(102) 评论(0) 推荐(0) 编辑
摘要: "145. 二叉树的后序遍历" 递归写法 非递归写法 还是比较难的,要保证根结点在左孩子和右孩子访问之后才能访问,因此对于任一结点P,先将其入栈。如果P不存在左孩子和右孩子,则可以直接访问它;或者P存在左孩子或者右孩子,但是其左孩子和右孩子都已被访问过了,则同样可以直接访问该结点。若非上述两种情况, 阅读全文
posted @ 2018-08-07 23:29 ACBingo 阅读(141) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 19 下一页