上一页 1 ··· 49 50 51 52 53 54 55 56 57 ··· 68 下一页
摘要: 题目如下: 解题思路:和【leetcode】235. Lowest Common Ancestor of a Binary Search Tree类似,但是本题不是BST树。我的解题思路是把从根节点到p和q的路径找出来,以题目的example 2为例,p的路径是"L" (L表示左,R表示右),q的路 阅读全文
posted @ 2018-09-13 15:00 seyjs 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:因为是BST,对于任意一个node,如果其val在p和q之间,那么说明p和q分别在其左子树和右子树,所以node就是其最低的祖父节点;如果val和q或者q相等,同样node就是其最低的祖父节点;如果p和q都比val大,说明这两个节点在node的右边,往右子树方向遍历;如果都小, 阅读全文
posted @ 2018-09-13 14:50 seyjs 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:我的做法是val_list保存调addNum时候输入的数值,然后在调getIntervals时候将val_list中的值插入到中并返回intervalList,同时清空val_list。插入元素到intervalList时分为四种情况,一是直接插入;二是该值正好是interva 阅读全文
posted @ 2018-09-13 14:42 seyjs 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:我的方法是先用递归的方法找出最左边的节点,接下来再对树做一次递归中序遍历,找到最左边节点后将其设为root,其余节点依次插入即可。 代码如下: 阅读全文
posted @ 2018-09-12 14:47 seyjs 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:非常简单的题目,直接递归就行了。 代码如下: 阅读全文
posted @ 2018-09-12 14:41 seyjs 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:本题考察的是分数的加减法。小学时候就学过,分数的加减法是先求两个分母的最小公倍数,然后分子分别乘以最小公倍数与自己分母的商,相加后约分即可。所以,本题只要按+,-两个符号分割输入字符串,就可以得到所有的分数列表,做加减操作即可。考虑到第一个分数是负数的情况,我在代码中加入了一个 阅读全文
posted @ 2018-09-12 14:37 seyjs 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:最长的周长一定是树中某一个节点(不一定是根节点)的左右子树中的两个叶子节点之间的距离,所以最简单的办法就是把树中所有节点的左右子树中最大的两个叶子节点之间的距离求出来,最终得到最大值。 代码如下: 阅读全文
posted @ 2018-09-12 14:35 seyjs 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:这是数学上的一个定理。对于x1/x2/x3/..../xN的序列,加括号可以得到的最大值是x1/(x2/x3/..../xN)。 代码如下: 阅读全文
posted @ 2018-09-11 22:04 seyjs 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:本题考查就是找出一个单词是不是另外一个单词的后缀,如果是的话,就可以Short Encode。所以,我们可以把words中每个单词倒置后排序,然后遍历数组,每个元素只要和其后面相邻的元素比较,如果是后缀则被Short Encode,否则不行。 代码如下: 阅读全文
posted @ 2018-09-11 10:34 seyjs 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 解题思路:我的解题思路是遍历数组,遇到0删除该元素并插入到数组头部,遇到1则不处理,遇到2删除该元素并插入到数组尾部。 代码如下: 阅读全文
posted @ 2018-09-10 09:33 seyjs 阅读(152) 评论(0) 推荐(0) 编辑
上一页 1 ··· 49 50 51 52 53 54 55 56 57 ··· 68 下一页