![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
NancyHelloWorld
一个不爱写博客的代码狗
展开
-
[leetcode][递归] [java]105题 根据前序和中序输出二叉树
数据结构学过,根据前序和中序可以确定唯一一棵二叉树。解法:理解是比较简单的,前序确定根节点的值,中序找到根节点的位置,根节点的前半部分是左子树,根的后半部分是右子树,再构建左子树,右子树。以此构建二叉树,当然理解起来很简单,代码需要使用递归访问和实现。例子:,构建树:代码:/** * Definition for a binary tree node. * public class TreeN...原创 2018-03-08 16:27:35 · 1174 阅读 · 0 评论 -
[leetcode][数组][java]495 情景题
在LOL世界里,有一个叫Teemo的英雄,他的攻击可以使他的敌人Ashe处于中毒状态。 现在,考虑到Teemo对Ashe的进攻时间序列和每个Teemo进攻的中毒持续时间,你需要输出Ashe处于中毒状态的总时间。Teemo在特定时间点开始攻击,并立即使Ashe处于中毒状态。eg1. 从时间点1开始投毒并中毒,第一次毒持续到时间点3,时长为2,从时间点4又投毒,持续到时间点6,时长为2,总共时长为4;...原创 2018-03-09 14:31:57 · 354 阅读 · 0 评论 -
[leetcode][java][队列]449.序列化和反序列化二叉排序树
将二叉排序树序列化成字符串,再将序列化后的字符串反序列成二叉排序树。对二叉排序树序列化只能用先序访问序列化,这里用到StringBuilder,添加空格字符分离每个值;反序列化使用到队列,当然还有递归,第一个字符肯定是根节点,比根节点小的都是左子树,比根节点大的是右子树,使用队列再次构造左子树,再用剩下的队列构造右子树。public class Codec { // Encodes a ...原创 2018-03-12 17:09:48 · 362 阅读 · 0 评论 -
[leetcode][java]29.Divide Two Integers
题目原话:不用乘除法实现两个数的除法需要注意长度的问题,百度看了网上很多移位运算的解法,还是没有看懂。来个简单粗暴的方法,将除数不停翻倍,比较除数与被除数的大小。class Solution { public int divide(int dividend, int divisor) { boolean sign = (dividend < 0) ^ (divisor...原创 2018-04-30 22:19:28 · 278 阅读 · 0 评论