- 博客(10)
- 资源 (2)
- 问答 (1)
- 收藏
- 关注
原创 程序逻辑错误
程序逻辑错误传入引用但参数的值未改变public class Main { public static void main(String[] args) { Integer a = new Integer(1); change(a); System.out.println(a); } public static void c
2016-06-12 21:03:37
1372
原创 LeetCode 133: Clone Graph
LeetCode 133: Clone Graph思路需要考虑自环和两个节点有多条边的特殊情况,这种情况下,不能生成新的节点,而是引用已有节点;利用Hashtable记录已经存放的节点;代码import java.util.Hashtable;public class Solution { public UndirectedGraphNode cloneGraph(Undirecte
2016-06-07 12:41:25
209
原创 LeetCode 55: Jump Game
LeetCode 55: Jump Game算法一思路(1)假定用start出发,用next记录从[start + 1, end]出发能到达的最远距离; (2)更新start和end; (3)如果next和end相等,表明不能继续,返回false;代码public class Solution { public boolean canJump(int[] nums) {
2016-05-30 19:23:09
226
原创 LeetCode 208: Implement Trie (Prefix Tree)
LeetCode 208: Implement Trie (Prefix Tree)思路使用HashMap存储后代,节省空间;需要设定一个boolean值来表示是否该节点为一个单词的结束;代码class TrieNode { // Initialize your data structure here. public HashMap<Character,TrieNode> ma
2016-05-26 16:28:21
222
原创 LeetCode 213: House Robber II
LeetCode 213: House Robber II思路在House Robber题的基础上分两种情况:nums[0]未被打劫;nums[0]被打劫;代码public class Solution { public int rob(int[] nums) { int length = nums.length; if (length == 0) re
2016-05-26 14:58:09
221
原创 LeetCode 198: House Robber
LeetCode 198: House Robber思路这题基本思路还是动态规划,对第i个房子如果不打劫其最大金额为max[i - 1];如果打劫,则第i - 1个房子不能打劫,最大金额为nums[i] + max[i - 2];代码一public class Solution { public int rob(int[] nums) { int length = nums.
2016-05-26 11:29:23
167
原创 LeetCode 166: Fraction to Recurring Decimal
LeetCode 166: Fraction to Recurring Decimal这里有两段代码,思路基本一致,都为深度优先搜索。代码一先进行递归,再在函数中判断是否符合条件;代码二先判断是否符合条件,再进行递归。但是代码二在大数据时超时,还没发现原因。代码一import java.util.Hashtable;public class Solution { public String
2016-05-26 11:25:55
227
原创 LeetCode 79: Word Search
LeetCode 79: Word Search程序有std输出时会耗时,Leetcode代码中要注释掉调试的std输出语句。
2016-05-16 10:50:56
202
原创 LeetCode 60: Permutation Sequence
LeetCode 60: Permutation Sequence算法思路已知以每个数字开头的序列数为(n - 1)!,根据(k - 1) / (n - 1) ! + 1可以知道第一个数字是几,然后递归,求出之后的数字;算法中数组flag记录数字是否被使用,factorials记录阶乘值,如果在递归函数中直接求阶乘会导致超时;每次递归n的值会减1,递归终止的条件即n为0,此外k的值变为k - pos
2016-04-04 14:30:47
229
原创 阿里实习一面
1、你对Java的哪一块是比较了解的,例如Java的体系等;2、栈和堆的区别;3、写一个方法使栈溢出,怎么写(为啥是递归不是循环,如果循环调用一个方法,会不会导致栈溢出);4、什么情况下会进行垃圾回收,空间比较少时,哪些对象会回收?5、HashMap怎么找到value值,为啥要使用数组和链表;6、冒泡排序的实现原理;7、并发的情况下,对公用变量进行操作时,怎么保证没有并发问
2016-03-24 11:17:32
310
一道算法或者逻辑面试题,求思路
2016-04-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人