let 96

Given n, how many structurally unique BST’s (binary search trees) that store values 1 … n? 解法一: 找规律,这种解法就是要找出一个具有普遍规律的解法, 首先就是把每一个节点作为根节点进行遍历,然后去求左右子...

2018-11-10 22:33:19

阅读数:6

评论数:0

let 142. Linked List Cycle II

首先如何找链表有环 解法: public class Solution { public boolean hasCycle(ListNode head) { if(head==null) return false; ListNode first=h...

2018-03-23 21:19:01

阅读数:36

评论数:0

let 139. Word Break

主题思想: 判断一个字符串是否能由一个字典中的字符串拼接而成。 AC 代码: class Solution { public boolean wordBreak(String s, List<String> wordDict) { ...

2018-03-22 22:23:17

阅读数:36

评论数:0

let 137. Single Number II

主题思想: 通用的解决方法, 对于一个数组中,只有一个数出现1次,其他数出现n次这种问题,采用利用位运算的解法, n=2,只出现2次时,很容易想到用异或的解法,本质还是用位运算,如果一个数出现n次,那么这个数的每一个为1的位,出现的次数等于n,如果统计每一个位出现的次数sum, 并对n求模, ...

2018-03-22 21:04:32

阅读数:39

评论数:0

let 136. Single Number

找出数组中只出现一次的数,其余的数都出现两次。 主题思想: 异或的定义,相同为0, 不同为1, 数组里每个数都异或操作,最后肯定是0和只出现一次的那个数异或,任何数和0异或等于数本身。 AC代码: class Solution { public int singleNumber(i...

2018-03-22 20:41:33

阅读数:22

评论数:0

let 135. Candy

主题思想: 正向来一次,反向来一次。 AC 代码: class Solution { public int candy(int[] ratings) { if(ratings==null)return 0; if(ratings.length&...

2018-03-21 22:51:10

阅读数:31

评论数:0

let 134. Gas Station

主题思想: 这个肯定O(n)有些事情需要考虑清楚,如果遇到哪个站点,无法走下去了,肯定需要从下一个站点重新开始才有可能继续走下去。 记录下总的气量和花费气量差值,如果小于0,肯定无法完成。 class Solution { public int canCompleteCircuit(...

2018-03-21 22:12:28

阅读数:21

评论数:0

131. Palindrome Partitioning

主题思想: 回溯法,好久没写,这种套路,再温习下 class Solution { public List<List<String>> partition(String s) { L...

2018-03-21 21:25:38

阅读数:25

评论数:0

let129. Sum Root to Leaf Numbers

主题思想: 一个简单的递归遍历,是后序遍历,先左子树,再由子树,如果一个节点是叶子节点,则返回当前根到叶子节点代表的值,如果是非叶子节点,则返回左右子树和的值 AC 代码: /** * Definition for a binary tree node. * public class Tr...

2018-03-17 15:36:47

阅读数:27

评论数:0

let 128 Longest Consecutive Sequence

Given an unsorted array of integers, find the length of the longest consecutive elements sequence. For example, Given [100, 4, 200, 1, 3, 2], The lo...

2018-03-17 15:02:45

阅读数:23

评论数:0

let 121. Best Time to Buy and Sell Stock

主题思想: 直觉应该是到dp问题,不应该是O(n^2)的解法,所以寻找方法进行转化,最后发现如果计算每天的差值,就可以转化为求差值数组的连续最大子数组问题,因此问题得解。 AC 代码: class Solution { public int maxProfit(int[] pric...

2018-03-12 21:57:16

阅读数:34

评论数:0

let 116. Populating Next Right Pointers in Each Node

主题思想: 这个还是层级遍历的变形。 层级遍历,需要一个队列数据结构作为辅助,然后记录每个层有多少个节点,来区分属于哪一个层。 只需要对每一层做相同的操作: 把相同层的节点连起来就可以了。 所以代码和层级遍历,相差无几, AC 代码: /** * Definition for bi...

2018-01-30 20:07:25

阅读数:31

评论数:0

let 116. Populating Next Right Pointers in Each Node

主题思想: 这个还是层级遍历的变形。 层级遍历,需要一个队列数据结构作为辅助,然后记录每个层有多少个节点,来区分属于哪一个层。 只需要对每一层做相同的操作: 把相同层的节点连起来就可以了。 所以代码和层级遍历,相差无几, AC 代码: /** * Definition for bi...

2018-01-30 20:06:06

阅读数:36

评论数:0

let 116. Populating Next Right Pointers in Each Node

主题思想: 这个还是层级遍历的变形。 层级遍历,需要一个队列数据结构作为辅助,然后记录每个层有多少个节点,来区分属于哪一个层。 只需要对每一层做相同的操作: 把相同层的节点连起来就可以了。 所以代码和层级遍历,相差无几, AC 代码: /** * Definition for bi...

2018-01-30 20:05:01

阅读数:33

评论数:0

let 115. Distinct Subsequences

主题思想: 这是一道dp题,这里总结下dp的通用套路, dp各种各样,总得需要总结点套路,再在套路基础上变通吧,先学套路。 一般dp问题,特别是这种两个字符串的关系, 一般思路是先创建一个表 dp[][] 一般长度多创建一个,为的是存储,空字符串,或者初始化一部分值,或者说dp一般下标...

2018-01-30 19:46:41

阅读数:33

评论数:0

let 114. Flatten Binary Tree to Linked List

主题思想: 这种方法有两种方法: 1. 按照提示,按前序顺序记录节点,然后重建树。 AC 代码: /** * Definition for a binary tree node. * public class TreeNode { * int val; * ...

2018-01-30 16:25:39

阅读数:38

评论数:0

let 113. Path Sum II

主题思想: 递归回溯, 关键点在于什么时候选择回溯,什么时候应该结束。 当遇到null 时结束,则应该在遍历完一个节点的左右子树过后,再删除栈顶元素。 AC 代码: /** * Definition for a binary tree node. * public class Tree...

2018-01-29 22:56:25

阅读数:34

评论数:0

let 112. Path Sum

主题思想: 判断是否存在一条根节点到叶子节点的路径,路径上的和等于指定数值。 AC 代码: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNo...

2018-01-29 22:23:10

阅读数:27

评论数:0

let 111. Minimum Depth of Binary Tree

主题思想: 递归, 找根节点到叶子节点的最小路径长度。 AC 代码: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * ...

2018-01-29 22:07:47

阅读数:26

评论数:0

let 110. Balanced Binary Tree

主题思想: 递归求解,判断是不是平衡而叉树。 AC 代码: /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * ...

2018-01-29 21:49:01

阅读数:33

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭